DebugDump Forum

本站无需注册,无需积分,无需回复可下载所有资料,如果真的喜欢小站,请您注册之后请至少回复一个帖子激活Id,谢谢支持! 站长QQ: 516333132 (挖坑网/填坑网) admin@debugdump.com

您尚未登录。

#1 2018-01-23 22:17:36

晕哥
Administrator
注册时间: 1970-01-01
累计积分: 5,759

一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

参考链接1: 给大家介绍一个非常不错的GUI ---- littlevgl

本来打算用MSVC2015来编译LittleVGL的,
但是后来发现LittleVGL用了大量C99特性,
而辣鸡的MSVC各个版本对C99都支持不好,
所以我们只能用windows下的gcc ---- mingw了

1. 下载i686-4.8.2-release-posix-dwarf-rt_v3-rev3.7z,
清华大学镜像站点: i686-4.8.2-release-posix-dwarf-rt_v3-rev3.7z,
北京理工大学站点: i686-4.8.2-release-posix-dwarf-rt_v3-rev3.7z
其它站点: i686-4.8.2-release-posix-dwarf-rt_v3-rev3.7z.mirrorlist
其它所有预编译mingw32: prebuilt/mingw_32/
解压i686-4.8.2-release-posix-dwarf-rt_v3-rev3.7z

2. 进入SDL2.0下载页面, 下载mingw预编译版本文件SDL2-devel-2.0.7-mingw.tar.gz
拷贝 SDL2-2.0.7\i686-w64-mingw32 所有内容到 mingw32\i686-w64-mingw32

3. 根据你的电脑配置选择64bit/32bit版本QtCreator编译调试软件:
下载QtCreator 64bit 最新版本 qt-creator-opensource-windows-x86_64-4.5.0.exe
下载QtCreator 32bit 最新版本 qt-creator-opensource-windows-x86-4.5.0.exe
其它QtCreator版本: official_releases/qtcreator/
下载后安装.

4. 配置QtCreator mingw编译环境.

5. git下载littlevgl 模拟器源码,并更新littlevgl core、driver、examples

git clone https://github.com/littlevgl/pc_simulator.git
cd pc_simulator
git submodule update --init

6. 打开工程,编译。










以下是重要更新:



2018-08-11:
-------------------------------------------
第1, 3步可以合并: 下载并安装 qt-opensource-windows-x86-5.9.6.exe, 选择 MinGW 5.3.0 32bit 即可!

QQ20180811082500.png

离线

#2 2018-01-24 08:43:58

晕哥
Administrator
注册时间: 1970-01-01
累计积分: 5,759

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

4. 配置QtCreator mingw编译环境.

1) 设置编译工具链:
打开 【工具】->【选项】->【构建和运行】-> 【编译器】-> 【添加】->【MINGW】->【C】
QQ20180124083828.png

打开 【工具】->【选项】->【构建和运行】-> 【编译器】-> 【添加】->【MINGW】->【C++】
QQ20180124083947.png

2) 设置调试工具:
打开 【工具】->【选项】->【构建和运行】-> 【Debuggers】
QQ20180124084547.png

3) 设置构建套件(Kit)
打开 【工具】->【选项】->【构建和运行】-> 【构建套件(Kit)】
QQ20180124084913.png

离线

#3 2018-01-24 10:07:16

晕哥
Administrator
注册时间: 1970-01-01
累计积分: 5,759

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

1. 修改Makefile, 删除clean:

## MAINOBJ -> OBJFILES

all: clean default

%.o: %.c
    @$(CC)  $(CFLAGS) -c $< -o $@
    @echo "CC $<"
   
default: $(AOBJS) $(COBJS) $(MAINOBJ)
    $(CC) -o $(BIN) $(MAINOBJ) $(AOBJS) $(COBJS) $(LDFLAGS)

clean:
    rm -f $(BIN) $(AOBJS) $(COBJS) $(MAINOBJ)

QQ20180124102142.png

2. 修改Makefile:

CFLAGS += -O3 -g3 -I./
LDFLAGS += -lSDL2 -lm

改为

CFLAGS += -O3 -g3 -I./ -ID:/Downloads/pc_simulator/
LDFLAGS += -lSDL2 -lm -lmingw32 -lSDL2main -lSDL2 -mwindows

QQ20180124113437.jpg

3.修改main.c:
int main (void)
==>
int main (int argc, char* argv[])

QQ20180124113441.png

离线

#4 2018-01-24 10:13:37

晕哥
Administrator
注册时间: 1970-01-01
累计积分: 5,759

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

从Makefile导入工程:

QQ20180124101419.png
QQ20180124101427.png
QQ20180124101431.png
QQ20180124101443.png
QQ20180124101447.png

QQ20180124114634.png
QQ20180124114726.png

离线

#5 2018-01-24 10:13:46

晕哥
Administrator
注册时间: 1970-01-01
累计积分: 5,759

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

占位

离线

#6 2018-01-24 10:14:50

晕哥
Administrator
注册时间: 1970-01-01
累计积分: 5,759

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

QQ20180124101621.png

CC lvgl/lv_misc/lv_ll.c
CC lvgl/lv_misc/lv_color.c
CC lvgl/lv_misc/lv_txt.c
CC lvgl/lv_misc/lv_ufs.c
CC lvgl/lv_misc/lv_trigo.c
CC lvgl/lv_themes/lv_theme_alien.c
CC lvgl/lv_themes/lv_theme.c
CC lvgl/lv_themes/lv_theme_default.c
CC lvgl/lv_themes/lv_theme_night.c
CC lvgl/lv_themes/lv_theme_templ.c
CC lvgl/lv_themes/lv_theme_zen.c
CC lvgl/lv_themes/lv_theme_material.c
CC lvgl/lv_draw/lv_draw_vbasic.c
CC lvgl/lv_draw/lv_draw.c
CC lvgl/lv_draw/lv_draw_rbasic.c
In file included from lv_drivers/display/fbdev.c:9:0:
lv_drivers/display/fbdev.h:16:25: fatal error: lv_drv_conf.h: No such file or directory
#include "lv_drv_conf.h"
                         ^
compilation terminated.
Makefile:87: recipe for target 'fbdev.o' failed
mingw32-make: *** [fbdev.o] Error 1
10:14:40: 进程"D:\Downloads\mingw32\bin\mingw32-make.exe"退出,退出代码 2 。
Error while building/deploying project pc_simulator (kit: MINGW4.8.2)
The kit MINGW4.8.2 has configuration issues which might be the root cause for this problem.
When executing step "Make"
10:14:41: Elapsed time: 06:06.

如果不修改Makefile和main.c, 编译或链接会出错,解决方案在3楼。

离线

#7 2018-01-24 13:32:42

601714078
会员
注册时间: 2018-01-18
累计积分: 4

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

楼主你好,在编译过程中报一堆的找不到该目录,是为什么呀:

sh: E:\Program: No such file or directory
sh: E:\Program: No such file or directory
sh: E:\Program: No such file or directory
sh: E:\Program: No such file or directory
CC lv_drivers/indev/XPT2046.c

离线

#8 2018-01-24 13:37:55

bugfix
会员
注册时间: 2017-11-22
累计积分: 122

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

601714078 说:

楼主你好,在编译过程中报一堆的找不到该目录,是为什么呀:

sh: E:\Program: No such file or directory
sh: E:\Program: No such file or directory
sh: E:\Program: No such file or directory
sh: E:\Program: No such file or directory
CC lv_drivers/indev/XPT2046.c

你把mingw 或者 littlevgl代码放在 "E:\Program Files" 下面吗?
可能是有空格的路径导致的!

离线

#9 2018-01-24 13:38:53

晕哥
Administrator
注册时间: 1970-01-01
累计积分: 5,759

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

对,楼上说的有道理。

离线

#10 2018-01-24 13:42:57

601714078
会员
注册时间: 2018-01-18
累计积分: 4

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

bugfix 说:
601714078 说:

楼主你好,在编译过程中报一堆的找不到该目录,是为什么呀:

sh: E:\Program: No such file or directory
sh: E:\Program: No such file or directory
sh: E:\Program: No such file or directory
sh: E:\Program: No such file or directory
CC lv_drivers/indev/XPT2046.c

你把mingw 或者 littlevgl代码放在 "E:\Program Files" 下面吗?
可能是有空格的路径导致的!


看了下两个都不是哦:
我的littlevgl工程放在了:F:\WorkData\pc_simulator
我的编译器放在了:E:\mingw\bin

也搞不懂为什么会报上面这个错误,

离线

#11 2018-01-24 13:46:58

601714078
会员
注册时间: 2018-01-18
累计积分: 4

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

这个是构建项目时打印出来的信息,可以看到编译器是在对的路径下:

13:44:27: 为项目pc_simulator执行步骤 ...
13:44:27: 正在启动 "E:\mingw\bin\mingw32-make.exe" all

sh: E:\Program: No such file or directory
sh: E:\Program: No such file or directory
sh: E:\Program: No such file or directory

离线

#12 2018-01-24 13:50:36

晕哥
Administrator
注册时间: 1970-01-01
累计积分: 5,759

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

那很神奇哦,你电脑应该有 "E:\Program Files" 这个目录吧?

放狗搜了一下,看起来应该是查找make.exe 到了 "E:\Program Files"去了。

This might be a bug in the particular make.exe that we're using from Make for Windows - GnuWin32.

https://github.com/STAT545-UBC/Discussion/issues/54

离线

#13 2018-01-24 13:56:07

601714078
会员
注册时间: 2018-01-18
累计积分: 4

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

晕哥 说:

那很神奇哦,你电脑应该有 "E:\Program Files" 这个目录吧?

放狗搜了一下,看起来应该是查找make.exe 到了 "E:\Program Files"去了。

This might be a bug in the particular make.exe that we're using from Make for Windows - GnuWin32.

https://github.com/STAT545-UBC/Discussion/issues/54


在电脑搜索了下make.exe文件,都是在E:\mingw\bin目录下,另外论坛是怎么贴图的

离线

#14 2018-01-24 13:56:24

晕哥
Administrator
注册时间: 1970-01-01
累计积分: 5,759

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

QQ20180124135614.png

如果是上面的问题造成的,解决办法在此 how-to-make-exe-file-in-qt-creator

The executable is generated by the compiler when you build your application. To know where the executable is stored, look into

Projects (CTRL+5) -> Build settings -> General -> Build directory

This is where Qt creator will put the .exe it generates if you have shadow build enabled. If shadow build is disabled, the executable will be stored inside the project folder itself.

离线

#15 2018-01-24 13:58:04

晕哥
Administrator
注册时间: 1970-01-01
累计积分: 5,759

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

离线

#16 2018-01-24 15:27:17

qwert1213131
会员
注册时间: 2018-01-08
累计积分: 34

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

第一次的编译速度实在是折磨人啊,太慢了,嘿嘿
终究是编译成功了,可喜可贺,感谢楼主大大
运行的时候提示出错,说找不到sdl2.dll
   把i686-w64-mingw32/bin文件夹下的SDL2.dll拷贝到最外层的bin文件夹里发现成功运行了

离线

#17 2018-01-24 15:34:13

晕哥
Administrator
注册时间: 1970-01-01
累计积分: 5,759

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

qwert1213131 说:

第一次的编译速度实在是折磨人啊,太慢了,嘿嘿
终究是编译成功了,可喜可贺,感谢楼主大大
运行的时候提示出错,说找不到sdl2.dll
   把i686-w64-mingw32/bin文件夹下的SDL2.dll拷贝到最外层的bin文件夹里发现成功运行了

哈,恭喜入坑。
把 sdl2.dll 所在的目录添加到PATH也是可以的。

离线

#18 2018-01-24 15:36:26

qwert1213131
会员
注册时间: 2018-01-08
累计积分: 34

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

TIM20180124154945.png
换个有颜色的,工程里面的例程比较详细

最近编辑记录 qwert1213131 (2018-01-24 15:51:48)

离线

#19 2018-01-24 16:07:29

bugfix
会员
注册时间: 2017-11-22
累计积分: 122

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

qwert1213131 说:

https://debugdump.com/files/members/418/TIM20180124154945.png
换个有颜色的,工程里面的例程比较详细

怎么做到的?
能不能用汉字?
求汉字demo

离线

#20 2018-01-24 16:53:49

qwert1213131
会员
注册时间: 2018-01-08
累计积分: 34

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

bugfix 说:
qwert1213131 说:

https://debugdump.com/files/members/418/TIM20180124154945.png
换个有颜色的,工程里面的例程比较详细

怎么做到的?
能不能用汉字?
求汉字demo

汉字目前还不是很清楚如何解决
估计在下个版本会得到支持吧

    lv_obj_t * label3 = lv_label_create(lv_scr_act(), NULL);
    lv_label_set_text(label3, "hello dump#ff0000 debug#");
    lv_label_set_recolor(label3, true);
    lv_obj_align(label3, lv_scr_act(), LV_ALIGN_CENTER 0, 0);

离线

#21 2018-01-24 16:57:48

晕哥
Administrator
注册时间: 1970-01-01
累计积分: 5,759

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

qwert1213131 说:
bugfix 说:
qwert1213131 说:

https://debugdump.com/files/members/418/TIM20180124154945.png
换个有颜色的,工程里面的例程比较详细

怎么做到的?
能不能用汉字?
求汉字demo

汉字目前还不是很清楚如何解决
估计在下个版本会得到支持吧

    lv_obj_t * label3 = lv_label_create(lv_scr_act(), NULL);
    lv_label_set_text(label3, "hello dump#ff0000 debug#");
    lv_label_set_recolor(label3, true);
    lv_obj_align(label3, lv_scr_act(), LV_ALIGN_CENTER 0, 0);

这个不错,显示不同颜色字符方便了。

离线

#22 2018-01-26 11:34:49

qwert1213131
会员
注册时间: 2018-01-08
累计积分: 34

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

晕哥 说:
qwert1213131 说:
bugfix 说:

怎么做到的?
能不能用汉字?
求汉字demo

汉字目前还不是很清楚如何解决
估计在下个版本会得到支持吧

    lv_obj_t * label3 = lv_label_create(lv_scr_act(), NULL);
    lv_label_set_text(label3, "hello dump#ff0000 debug#");
    lv_label_set_recolor(label3, true);
    lv_obj_align(label3, lv_scr_act(), LV_ALIGN_CENTER 0, 0);

这个不错,显示不同颜色字符方便了。

汉字部分可以看这个地方
https://github.com/littlevgl/lvgl/issues/78
35091733-4ffb6942-fc78-11e7-9f60-0b3bba16c07e.jpg

离线

#23 2018-01-26 13:36:31

bugfix
会员
注册时间: 2017-11-22
累计积分: 122

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

楼上这个汉字不错,要好好学习!

离线

#24 2018-02-24 22:33:21

huy666
会员
注册时间: 2018-02-24
累计积分: 7

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

试了一下挺好,linux下主题,挺好用。
在win10下原demo运行正常,主题的demo编译不能通过。
重装了win7,qt,原demo也编译不过了。
一堆错误:
process_begin: CreateProcess(NULL, pwd, ...) failed.
mingw32-make: Makefile:88: pipe: No such file or directory
process_begin: CreateProcess(NULL, pwd, ...) failed.
mingw32-make: Makefile:88: pipe: No such file or directory
...
...

可能是什么原因呢?

离线

#25 2018-02-24 22:42:41

daydayup
会员
注册时间: 2017-10-09
累计积分: 294

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

其他demo如何呢?

离线

#26 2018-02-24 22:51:25

daydayup
会员
注册时间: 2017-10-09
累计积分: 294

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

从错误提示来看,好像少了 pipe.exe,明天看下我的电脑是不是有这个文件。

离线

#27 2018-02-25 11:03:00

huy666
会员
注册时间: 2018-02-24
累计积分: 7

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

装了官方的mingw,添加msys路径正常了。

离线

#28 2018-02-25 11:09:59

huy666
会员
注册时间: 2018-02-24
累计积分: 7

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

qt会检测到后装的mingw,用这个编译会有一个警告,但是也能运行。

main.c: In function 'SDL_main':
main.c:59:9: warning: 'usleep' is deprecated [-Wdeprecated-declarations]
         usleep(1000);       /*Just to let the system breath*/
         ^~~~~~
In file included from main.c:11:0:
c:\mingw\include\unistd.h:104:5: note: declared here
int usleep( useconds_t period ){ return __mingw_sleep( 0, 1000 * period ); }
     ^~~~~~

离线

#29 2018-02-25 11:51:40

daydayup
会员
注册时间: 2017-10-09
累计积分: 294

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

这个警告看起来是 C代码的 #warning 抛出来的,
估计意图是尽量不要用,
后面的版本可能会删除这个函数,
不过现在你可以先忽略。

离线

#30 2018-02-26 22:39:50

huy666
会员
注册时间: 2018-02-24
累计积分: 7

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

试了下eclipse win-builds 和 msys2

eclipse 用和qt同样的gcc编译器,同样的源码和makefile,链接出错。感觉感觉要比qt编译的快。
Building target: lv_dev_5
Invoking: Cross GCC Linker
i686-w64-mingw32-gcc -o "lv_dev_5" ./lvgl/lv_themes/lv_theme.o ./lvgl/lv_themes/lv_theme_alien.o
......
./lv_drivers/indev/keyboard.o ./lv_drivers/indev/mouse.o ./lv_drivers/display/R61581.o ./lv_drivers/display/SSD1963.o ./lv_drivers/display/ST7565.o ./lv_drivers/display/fbdev.o ./lv_drivers/display/monitor.o ./main.o -lSDL2main -lSDL2
e:/mingw32/bin/../lib/gcc/i686-w64-mingw32/4.8.2/../../../../i686-w64-mingw32/lib/../lib/libmingw32.a(lib32_libmingw32_a-crt0_c.o):crt0_c.c:(.text.startup+0x39): undefined reference to `WinMain@16'
collect2.exe: error: ld returned 1 exit status
makefile:81: recipe for target 'lv_dev_5' failed
make: *** [lv_dev_5] Error 1


win-builds 集成的东西要多一些。
http://win-builds.org/doku.php
sdl版本是2.0.3 它自带的gcc
编译有一个警告。
CC lv_examples/lv_tutorial/3_styles/lv_tutorial_styles.c
CC lv_examples/lv_tutorial/4_themes/lv_tutorial_themes.c
CC lv_examples/lv_tutorial/5_antialiasing/lv_tutorial_antialiasing.c
lv_examples/lv_tutorial/6_images/lv_tutorial_images.c: In function 'pcfs_open':
lv_examples/lv_tutorial/6_images/lv_tutorial_images.c:170:8: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
if((long int)f <= 0) return LV_FS_RES_UNKNOWN;
^
CC lv_examples/lv_tutorial/6_images/lv_tutorial_images.c
CC lv_examples/lv_tutorial/6_images/img_red_flower.c
CC lv_examples/lv_tutorial/7_fonts/lv_tutorial_fonts.c

运行出错。
Starting F:\Other\pc_simulator\demo.exe...
Fatal Error: Out of memory - aborting
F:/Other/pc_simulator/demo.exe exited with code 0


msys2链接也出错

http://www.msys2.org/

v_tutorial_objects.o lv_tutorial_styles.o lv_tutorial_themes.o lv_tutorial_antialiasing.o lv_tutorial_images.o img_red_flower.o lv_tutorial_fonts.o ubuntu_40_ascii.o ubuntu_40_cyrillic.o lv_tutorial_animations.o lv_tutorial_responsive.o -lSDL2 -lm -L/mingw64/lib/ -lSDL2main -lSDL2 -mwindows
/usr/lib/../lib/libmsys-2.0.a(libcmain.o):在函数‘main’中:
/msys_scripts/msys2-runtime/src/msys2-runtime/winsup/cygwin/lib/libcmain.c:37:对‘WinMain’未定义的引用
/msys_scripts/msys2-runtime/src/msys2-runtime/winsup/cygwin/lib/libcmain.c:37:(.text.startup+0x94): 截断重寻址至相符: R_X86_64_PC32 针对未定义的符号 WinMain
collect2: 错误:ld 返回 1
make: *** [Makefile:95:default] 错误 1

离线

#31 2018-03-01 20:51:37

yue3004
会员
注册时间: 2018-03-01
累计积分: 5

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

我这老是提示找不到lv_ex_conf.h。

离线

#32 2018-03-01 21:09:56

晕哥
Administrator
注册时间: 1970-01-01
累计积分: 5,759

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

我刚刚在我电脑上也没有搜到 lv_ex_conf.h
然后谷歌搜了一下,貌似把 lv_conf.h 改成了 lv_ex_conf.h

https://github.com/littlevgl/lv_examples/blob/master/README.md

Add the examples to your projects

Clone this repositry: git clone https://github.com/littlevgl/lv_examples.git or download from the Download page. To always use the newst version the cloning is recommended.
The lv_examples directory should be next to the lvgl directory in your project.
Similary to lv_conf.h there is a configuration file for the examples too. It is called lv_ex_conf.h.

Copy lv_examples/lv_ex-conf_templ.h next to lv_examples directory
Rename is to lv_ex_conf.h
Delete the first #if and last #endif to enable the file's content
Enable or Disable modules

离线

#33 2018-03-01 23:25:41

yue3004
会员
注册时间: 2018-03-01
累计积分: 5

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

:-1: error: Makefile:87: pipe: No such file or directory请问这种错误怎么搞定?

离线

#34 2018-03-02 06:50:47

晕哥
Administrator
注册时间: 1970-01-01
累计积分: 5,759

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

yue3004 说:

:-1: error: Makefile:87: pipe: No such file or directory请问这种错误怎么搞定?

你看下24楼,应该是你的路径或者软件版本不对。

离线

#35 2018-03-02 11:32:52

yue3004
会员
注册时间: 2018-03-01
累计积分: 5

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

发现git下来的代码好像编辑器会引起预编译问题

离线

#36 2018-03-02 11:38:59

daydayup
会员
注册时间: 2017-10-09
累计积分: 294

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

yue3004 说:

发现git下来的代码好像编辑器会引起预编译问题

你可以直接在mingw的shell执行make,
应该不会有问题的。

离线

#37 2018-03-02 13:00:29

yue3004
会员
注册时间: 2018-03-01
累计积分: 5

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

daydayup 说:
yue3004 说:

    发现git下来的代码好像编辑器会引起预编译问题

你可以直接在mingw的shell执行make,
应该不会有问题的。

请问win7下怎么用mingw的shell啊?

离线

#38 2018-03-02 14:02:09

晕哥
Administrator
注册时间: 1970-01-01
累计积分: 5,759

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

一般单独下载的mingw不带shell(比如msys2),
不过你可以单独下载 MSYS2安装程序

MSYS2是Windows的软件发行版和构建平台
其核心是基于现代Cygwin(POSIX兼容层)和MinGW-w64的独立重写MSYS,旨在与本地Windows软件更好地互操作。它提供了一个bash shell,Autotools,修订控制系统等,用于使用MinGW-w64工具链构建本地Windows应用程序。

它具有包装管理系统,可以轻松安装包装袋,Pacman。它带来了许多强大的功能,如依赖解决方案和简单的完整系统升级,以及简单的软件包构建。


安装限制:
MSYS2不能安装在FAT *分区上。
当前的MSYS2不能再安装在Windows XP上。

...

仔细看说明哦

离线

#39 2018-03-07 21:23:01

huy666
会员
注册时间: 2018-02-24
累计积分: 7

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

eclipse  msys2下都可以了,eclipse  要把设置库和包含路径等,不知为什么原来的makefile没有起作用。 msys2要装i386对应的工具(gcc,sdl2),然后到工程目录下执行make即可。
msys2编译整个工程要2分钟,即使加上-j4选项也要1分钟40秒。 之前qtcreator也要2分钟。eclipse  编译整个工程只需30秒,不知怎么做到的。

win-builds 版本比较旧,sdl2的版本是2.0.3没有折腾了。

离线

#40 2018-03-07 21:27:18

daydayup
会员
注册时间: 2017-10-09
累计积分: 294

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

这个问题我也发现了,在Linux下执行make速度非常快,
但是用msys速度要慢好几倍,
QtCreator也是调用mingw-make,
速度一样的。

eclipse是不是用了自己的make命令?

离线

#41 2018-03-11 00:02:01

huy666
会员
注册时间: 2018-02-24
累计积分: 7

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

daydayup 说:

这个问题我也发现了,在Linux下执行make速度非常快,
但是用msys速度要慢好几倍,
QtCreator也是调用mingw-make,
速度一样的。

eclipse是不是用了自己的make命令?


eclipse并没有使用工程内的makefile文件,他会建立一个debug文件夹,自己生产makefile,编译输出的文件在这个文件夹里。没有深入研究。

离线

#42 2018-04-12 20:29:22

guo_felix
会员
注册时间: 2018-04-12
累计积分: 1

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

哇 感谢分享 之前照官网想装eclipse的 但是mingw一直没下下来 第一次弄也不是太熟悉  还有想问一下,如果想重新全部编译呢?又要到makefile里面加上那条clean语句吗  谢谢!

离线

#43 2018-04-12 22:39:54

晕哥
Administrator
注册时间: 1970-01-01
累计积分: 5,759

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

1. 你按照上面的步骤删除 all 后面的 clean, 否则每次 make 的时候都要先clean, 在windows下忍受不了那个编译速度。
2. 如果真想clean, 右击 Qt工程文件, 选择清除即可。

他的Makefile写的不好, 上面是曲线解决办法。

离线

#44 2018-06-16 14:21:38

beyondabcd
会员
注册时间: 2018-06-12
累计积分: 44

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

编译后,运行,提示:

Starting D:\Downloads\pc_simulator\demo.exe...
程序异常结束。
The process was ended forcefully.
D:/Downloads/pc_simulator/demo.exe crashed.


该怎么解决?

离线

#45 2018-06-16 14:26:57

beyondabcd
会员
注册时间: 2018-06-12
累计积分: 44

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

已经解决了
运行的时候提示出错,说找不到sdl2.dll
   把i686-w64-mingw32/bin文件夹下的SDL2.dll拷贝到最外层的bin文件夹里发现成功运行了

离线

#46 2018-06-16 16:19:18

晕哥
Administrator
注册时间: 1970-01-01
累计积分: 5,759

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

恭喜成功入坑.

离线

#47 2018-06-30 11:15:22

碧水渊
会员
注册时间: 2018-06-30
累计积分: 1

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

WIN1064位安装QT4.8.7+QT CREATOR4.8.2 64位,启动QT Creator弹出错误窗口1.png

离线

#48 2018-06-30 11:35:16

晕哥
Administrator
注册时间: 1970-01-01
累计积分: 5,759

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

缺libisl-15.dll文件, 用everything 搜一下,看本地硬盘有没有,如果有就添加到 系统 PATH,

没有就要下载了。

离线

#49 2018-07-14 15:35:59

beyondabcd
会员
注册时间: 2018-06-12
累计积分: 44

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

跟贴,问一下,如何修改运行的窗体大小

离线

#50 2018-07-14 15:49:40

晕哥
Administrator
注册时间: 1970-01-01
累计积分: 5,759

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

QQ20180714154841.png

可以直接修改 SDL_CreateWindow 这个函数的参数,

或者修改 lv_conf.h:

/* Horizontal and vertical resolution of the library.*/
#define LV_HOR_RES          (800)
#define LV_VER_RES          (480)

清除(clean)后再重新编译即可。

离线

#51 2018-07-14 16:09:06

晕哥
Administrator
注册时间: 1970-01-01
累计积分: 5,759

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

至于为什么要 clean再编译才能起作用晚点公布答案

离线

#52 2018-07-14 18:11:05

beyondabcd
会员
注册时间: 2018-06-12
累计积分: 44

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

问题一:直接修改 SDL_CreateWindow 这个函数的参数,长宽设置为800X600,没有修改 lv_conf.h文件的情况下,程序运行。
窗体和程序显示的控件按比例一同变大了,显示开始有些模糊,鼠标按上面的几个按钮,基本失效。

问题二、修改 lv_conf.h文件的情况下,程序运行。修改lv_conf.h文件后,第一步清除,第二步重新构建。
窗体变大了,但显示的内容没有按比较变大。

请晕哥能不能解释一下,这两点的不同之处。


想贴几张图片上来,来说明情况,但没能明白,怎么贴图

离线

#53 2018-07-14 18:13:58

晕哥
Administrator
注册时间: 1970-01-01
累计积分: 5,759

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

https://debugdump.com/t_588.html
半自动贴图方法。

离线

#54 2018-07-14 18:23:37

beyondabcd
会员
注册时间: 2018-06-12
累计积分: 44

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

问题一:直接修改 SDL_CreateWindow 这个函数的参数,长宽设置为800X600,没有修改 lv_conf.h文件的情况下,程序运行。
窗体和程序显示的控件按比例一同变大了,显示开始有些模糊,鼠标按上面的几个按钮,基本失效。
1.jpg
问题二、修改 lv_conf.h文件的情况下,程序运行。修改lv_conf.h文件后,第一步清除,第二步重新构建。
2.jpg
3.jpg
窗体变大了,但显示的内容没有按比较变大。
请晕哥能不能解释一下,这两点的不同之处。

离线

#55 2018-07-14 20:02:41

beyondabcd
会员
注册时间: 2018-06-12
累计积分: 44

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

另外在问个问题
在单片机中使用littlevgl,如何识别外部按键,有这方面的例子吗?

离线

#56 2018-07-14 20:39:03

beyondabcd
会员
注册时间: 2018-06-12
累计积分: 44

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

外部按键这个,已经解决了,你在论坛上有说明

离线

#57 2018-07-14 22:41:33

晕哥
Administrator
注册时间: 1970-01-01
累计积分: 5,759

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

问题一:直接修改 SDL_CreateWindow 这个函数的参数,长宽设置为800X600,没有修改 lv_conf.h文件的情况下,程序运行。
窗体和程序显示的控件按比例一同变大了,显示开始有些模糊,鼠标按上面的几个按钮,基本失效。

是的,你当时问我怎么改模拟器大小,我直接找创建窗口的地方,试了一下 SDL_CreateWindow 确实直接可以改模拟器窗口大小,
但是只改这里是不行的,会带来其它后遗症, 这不触摸屏就乱套了.

至于为什么要 clean再编译才能起作用晚点公布答案

因为Makefile 写得不够严谨,  比如修改了 lv_conf.h 里面的长、宽之后,应该重新编译 monitor.c, 也就是说monitor.o 应该依赖 lv_conf.h, 实际上Makefile并没有这么做。

离线

#58 2018-07-14 23:09:56

晕哥
Administrator
注册时间: 1970-01-01
累计积分: 5,759

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

QQ20180714230445.png

问题二、修改 lv_conf.h文件的情况下,程序运行。修改lv_conf.h文件后,第一步清除,第二步重新构建。
窗体变大了,但显示的内容没有按比较变大。
请晕哥能不能解释一下,这两点的不同之处。


windows下gcc编译速度太慢,我在虚拟机ubuntu里面5分钟可以全部来过一次,windows半小时以上。
我试了一下修改lv_conf.h, 偷懒只删除 monitor.o, 确实和你上面的表现一致。

git clone https://github.com/littlevgl/pc_simulator.git
cd pc_simulator
git submodule update --init
make ###运行正常
./demo
make      ###改 lv_config.h
./demo   ###窗口放大正常

从上说明修改

#define LV_HOR_RES          (800)
#define LV_VER_RES          (600)

肯定是可以的,至于为什么有问题,肯定是我们操作有问题。

离线

#59 2019-03-11 15:20:22

九霄云外
会员
注册时间: 2019-01-09
累计积分: 40

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

huy666 说:

装了官方的mingw,添加msys路径正常了。

15:36:02: 为项目pc_simulator执行步骤 ...
15:36:02: 正在启动 "C:\mingw-w64_686\i686-8.1.0-posix-dwarf-rt_v6-rev0\mingw32\bin\mingw32-make.exe" all

process_begin: CreateProcess(NULL, pwd, ...) failed.
mingw32-make: Makefile:17: pipe: No error
process_begin: CreateProcess(NULL, pwd, ...) failed.
mingw32-make: Makefile:18: pipe: No such file or directory
process_begin: CreateProcess(NULL, pwd, ...) failed.
mingw32-make: Makefile:19: pipe: No such file or directory
process_begin: CreateProcess(NULL, pwd, ...) failed.
mingw32-make: Makefile:41: pipe: No such file or directory
Makefile:19: /lv_examples/lv_examples.mk: No such file or directory
mingw32-make: *** No rule to make target '/lv_examples/lv_examples.mk'.  Stop.
15:36:02: 进程"C:\mingw-w64_686\i686-8.1.0-posix-dwarf-rt_v6-rev0\mingw32\bin\mingw32-make.exe"退出,退出代码 2 。
Error while building/deploying project pc_simulator (kit: MinGW4.8.2)
When executing step "Make"
15:36:02: Elapsed time: 00:00.

我遇到了和你一样的问题,
官网下载 MinGW-w64 - for 32 and 64 bit Windows,qt设置了安装路径的gcc g++,还是一样

不知道你的msys是添加到哪里,怎么设置的?

最近编辑记录 九霄云外 (2019-03-11 15:37:01)


全志芯片供应、方案开发、技术支持 QQ:610943940

离线

#60 2019-03-11 15:42:03

晕哥
Administrator
注册时间: 1970-01-01
累计积分: 5,759

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

按一楼底下更新那个方法, 坑比较少:



以下是重要更新:



2018-08-11:
-------------------------------------------
第1, 3步可以合并: 下载并安装 qt-opensource-windows-x86-5.9.6.exe, 选择 MinGW 5.3.0 32bit 即可!

QQ20180811082500.png

离线

#61 2019-03-11 15:43:20

晕哥
Administrator
注册时间: 1970-01-01
累计积分: 5,759

Re: 一步一步分享在Windows QtCreator/Mingw平台编译运行调试LittleVGL

最好用 VC2017, mingw 编译速度慢, 坑多。

https://debugdump.com/t_2058.html

离线

页脚