WhyCan Forum

人过留名,雁过留声,感谢各位朋友不离不弃地支持。 QQ: 516333132 (挖坑网/填坑网) admin@whycan.cn

您尚未登录。

#1 2018-09-26 13:03:08

ovosos
会员
注册时间: 2018-09-26
累计积分: 1

利用QT 调试LittleVGL 模拟器环境搭建

首先参考了 晕哥的 https://whycan.cn/t_714.html 没成功 折腾了好久 ,我菜鸟一个不懂Makefile文件是啥,绕弯一大圈也没搞定 , 始终编译不通过

最后研究了一下创建一个新的工程,顺利通过编译.
下面说一下几个步骤:
1:参考了 https://blog.csdn.net/hjl240/article/details/48102897
   下载SDL2 LIB 文件
2:新建一个Non-Qt Project工程,关于QT 环境搭建不在本贴讨论范围 , 适合有QT使用基础的用户.
  新建一个Non-Qt Project工程
  随便取个名字
我这里取名 "LittleVGL_Simulator"
  选择MinGW编译器
3:复制SDL2.0必要文件到工程目录下载
  选择MinGW编译器
4:从这里下载https://github.com/littlevgl/pc_simulator.git
  并复制到LittleVGL_Simulator 目录下面
复制到LittleVGL_Simulator
5:这时lv_drivers  lv_examples  lvgl 几个文件夹是空的 还需要下载必要文件放入这几个文件夹
从这里下载 lvgl : https://github.com/littlevgl/lvgl
              lv_drivers : https://github.com/littlevgl/lv_drivers 
             lv_examples  : https://github.com/littlevgl/lv_examples 
这里还要注意一下,要删除 lv_drv_conf_templ.h    lv_conf_templ.h   lv_ex_conf_templ.h  这三个文件
6: 右击工程名并Add Existing Directory... 把文件加载进来  Add Existing Directory...
7: 打开pro文件 ,然后SOURCES 会有两个main.c 删除一个多余的main.c
编译
   并添加
LIBS += -L../lib/x86 -lSDL2
LIBS += -L../lib/x86 -lSDL2main
LIBS += -L../lib/x86 -lSDL2_test
删除控制台 #CONFIG += console
删除控制台
8: 最后构建一次 出现 以下错误
错误

修改lv_color_to32 为24 才编译通过

离线

#2 2018-09-26 13:39:57

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 7,849

Re: 利用QT 调试LittleVGL 模拟器环境搭建

写得非常详细, 感谢分享!
这个不是利用工程原来的 Makefile, 而是自己生成 Qt 的 pro 工程文件?

离线

#3 2018-10-18 00:33:52

Iven
会员
注册时间: 2018-04-10
累计积分: 10

Re: 利用QT 调试LittleVGL 模拟器环境搭建

按照楼主的步骤来,细节有部分不一样,主要是在报错说 <SDL2/SDL.h>找不到,偷懒手动添加了,没出现楼主说的lv_color_to32 为24的问题~谢谢~

离线

#4 2018-10-28 01:26:13

baidxi
会员
注册时间: 2018-10-27
累计积分: 7

Re: 利用QT 调试LittleVGL 模拟器环境搭建

这个方法有个问题就是效率太低了

离线

#5 2018-10-28 10:38:19

cityf
会员
注册时间: 2017-11-03
累计积分: 159

Re: 利用QT 调试LittleVGL 模拟器环境搭建

baidxi 说:

这个方法有个问题就是效率太低了

看个人的使用习惯,我觉得用 QtCreator效率很高.
唯一不爽的就是按 TAB 键的行为不能设置,
别的编辑器可以设定是 TAB 还是 多少个SPACE.
不知道是不是我没有找到选项?

离线

#6 2018-10-28 13:58:46

baidxi
会员
注册时间: 2018-10-27
累计积分: 7

Re: 利用QT 调试LittleVGL 模拟器环境搭建

cityf 说:
baidxi 说:

这个方法有个问题就是效率太低了

看个人的使用习惯,我觉得用 QtCreator效率很高.
唯一不爽的就是按 TAB 键的行为不能设置,
别的编辑器可以设定是 TAB 还是 多少个SPACE.
不知道是不是我没有找到选项?

你理解错我说的效率了,我说的是编译效率很低,特别是需要全部重编译的情况下,在linux下,或者用qmake,几十秒就能编译完,但是用mingw会花很多时间。你说的那个确实有选项
QQ20181028135726.png

离线

#7 2018-10-28 15:10:13

v3s
会员
注册时间: 2017-09-08
累计积分: 105

Re: 利用QT 调试LittleVGL 模拟器环境搭建

mingw 编译效率确实比同配置下linux慢十倍以上,
当你决定用mingw 工具的时候已经决定了。

离线

#8 2018-12-06 00:05:44

3038922
会员
注册时间: 2018-10-08
累计积分: 11

Re: 利用QT 调试LittleVGL 模拟器环境搭建

v3s 说:

mingw 编译效率确实比同配置下linux慢十倍以上,
当你决定用mingw 工具的时候已经决定了。

怎么用MSBUILD啊?

离线

#9 2018-12-06 08:05:02

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 7,849

Re: 利用QT 调试LittleVGL 模拟器环境搭建

3038922 说:
v3s 说:

mingw 编译效率确实比同配置下linux慢十倍以上,
当你决定用mingw 工具的时候已经决定了。

怎么用MSBUILD啊?

据说改改 VC 可以通过编译的, 我当时偷懒用 mingw-gcc 了.

离线

#10 2018-12-16 00:30:04

3038922
会员
注册时间: 2018-10-08
累计积分: 11

Re: 利用QT 调试LittleVGL 模拟器环境搭建

晕哥 说:
3038922 说:
v3s 说:

mingw 编译效率确实比同配置下linux慢十倍以上,
当你决定用mingw 工具的时候已经决定了。

怎么用MSBUILD啊?

据说改改 VC 可以通过编译的, 我当时偷懒用 mingw-gcc 了.

我改了下 最后链接错误?
1>------ 已启动生成: 项目: lvgl, 配置: Debug Win32 ------
1>main.obj : error LNK2019: 无法解析的外部符号 _usleep,该符号在函数 _SDL_main 中被引用
1>D:\pc_simulator\Debug\lvgl.exe : fatal error LNK1120: 1 个无法解析的外部命令

离线

#11 2018-12-16 16:29:12

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 7,849

Re: 利用QT 调试LittleVGL 模拟器环境搭建

3038922 说:
晕哥 说:
3038922 说:

怎么用MSBUILD啊?

据说改改 VC 可以通过编译的, 我当时偷懒用 mingw-gcc 了.

我改了下 最后链接错误?
1>------ 已启动生成: 项目: lvgl, 配置: Debug Win32 ------
1>main.obj : error LNK2019: 无法解析的外部符号 _usleep,该符号在函数 _SDL_main 中被引用
1>D:\pc_simulator\Debug\lvgl.exe : fatal error LNK1120: 1 个无法解析的外部命令

VC里面么有 usleep这个函数, 要么自己改成 Win32的 api Sleep(), 注意这个单位是毫秒。

离线

#12 2019-09-14 19:14:55

刘少来了
会员
注册时间: 2019-01-24
累计积分: 25

Re: 利用QT 调试LittleVGL 模拟器环境搭建

火钳刘明

离线

#13 2019-09-27 16:40:19

guduxue
会员
注册时间: 2019-09-27
累计积分: 2

Re: 利用QT 调试LittleVGL 模拟器环境搭建

ecplice 模拟器的项目下,有CMakeLists.txt,直接使用QtCreator打开这个cmake项目就好了,我在ubuntu下就是这个模拟的。

离线

#14 2019-09-27 16:46:20

ffplay
会员
注册时间: 2019-08-31
累计积分: 38

Re: 利用QT 调试LittleVGL 模拟器环境搭建

自带了 CMakeLists.txt 是吧,不用手动生成?

离线

页脚