LittleVGL(LVGL)学习笔记——PC 模拟器的安装和使用(CodeBlocks)

此篇完成后的工程文件:LittleVGL CodeBlocks模拟器编译成功的库和工程包

一、简介

1、LittleVGL 所支持的 IDE 软件种类:

在这里插入图片描述
此次使用CodeBlocks,安装使用比较简单。


2、需要的工具:

软件和版本文件名下载
CodeBlocks 17.12codeblocks-17.12mingw-setup.exehttp://www.codeblocks.org/downloads/26
SDL2SDL2-devel-2.0.10-mingw.tar.gzhttp://www.libsdl.org/download-2.0.php
LittleVGL 模拟器库lv_pc_simulator.ziphttps://github.com/littlevgl/pc_simulator

CSDN打包下载:LittleVGL PC模拟器环境包(CodeBlocks)


二、安装配置软件和环境

1、littleVGL 模拟器库

  • 解压lv_pc_simulator.zip ,生成lv_pc_simulator目录。
  • 解压目录下的 lv_drivers.zip, lv_examples.zip, lvgl.zip三个文件
  • 目录下新建codeblocks子目录,用来存放 CodeBlock 项目工程文件
    目录结构:
    在这里插入图片描述

2、安装CodeBlocks

  • 双击安装 codeblocks-17.12mingw-setup.exe,全部Next就可以了。
  • 安装完后弹出:
    在这里插入图片描述

三、创建工程项目

File->New->Project...
在这里插入图片描述
GO
在这里插入图片描述
Next
在这里插入图片描述
Next
在这里插入图片描述

  • 项目名: littleVGL
  • 存放路径: lv_pc_simulator/codeblocks目录下。
  • Next

在这里插入图片描述
Finish


四、配置SDL2

  1. 解压 SDL2-devel-2.0.10-mingw.tar.gz
  2. SDL2-2.0.10\i686-w64-mingw32\include 目录下的 SDL2 目录拷贝到 CodeBlock 的安装目录 CodeBlocks\MinGW\include
  3. SDL2-2.0.10\i686-w64-mingw32\lib 下的 7 个.a 或者 .la 库文件拷贝到 CodeBlock 的安装目录 CodeBlocks\MinGW\lib

五、添加项目文件

1、删除默认创建的文件

  • 右键 main.c 文件,点击 Remove file from project 删除
  • lv_pc_simulator\codeblocks\littleVGL 目录下把main.c文件完全删除。

2、添加库文件

在这里插入图片描述
工程上右键——Add files recursively——选择 lv_pc_simulator 顶层目录
在这里插入图片描述
默认OK
在这里插入图片描述
默认OK
完成后的目录结构:
在这里插入图片描述

3、添加运行文件

SDL2-2.0.10\i686-w64-mingw32\bin 目录下的 SDL2.dll 文件拷贝到lv_pc_simulator\codeblocks\littleVGL\bin\Debug 目录下面。


六、配置项目工程

右键工程图标,点击Build options,打开对话框之后,在 Other linker options 下输入 -lmingw32 -lSDL2main -lSDL2
在这里插入图片描述
Search directories添加头文件搜索路径:
在这里插入图片描述
使用相对路径:
在这里插入图片描述


七、修改和编译

1、修改文件

(1)以下为4个演示例程,任意去掉一行的注释即可:

benchmark_create();
lv_test_theme_1(lv_theme_night_init(15, NULL));
lv_test_theme_2();
lv_test_group_1();

在这里插入图片描述
(2)修改lv_pc_simulator\lv_drv_conf.h头文件,宏定义改为 0

/*-----------------------------------------
 *  Linux frame buffer device (/dev/fbx)
 *-----------------------------------------*/
#ifndef USE_FBDEV
#  define USE_FBDEV           0
#endif

2、编译:

点击以下图标:
在这里插入图片描述
如果报错,参照第七点的问题解决


3、运行:

在这里插入图片描述

八、问题解决:

问题一:

||=== Build: Debug in littleVGL (compiler: GNU GCC Compiler) ===|
E:\Documents\lv_pc_simulator\lv_drivers\display\fbdev.c|17|fatal error: linux/fb.h: No such file or directory|

在这里插入图片描述
解决:
修改lv_pc_simulator\lv_drv_conf.h头文件,宏定义改为 0

/*-----------------------------------------
 *  Linux frame buffer device (/dev/fbx)
 *-----------------------------------------*/
#ifndef USE_FBDEV
#  define USE_FBDEV           0
#endif

问题二:

||=== Build: Debug in littleVGL (compiler: GNU GCC Compiler) ===|
obj\Debug\codeblocks\littleVGL\main.o||In function `main':|
E:\Documents\lv_pc_simulator\codeblocks\littleVGL\main.c|5|multiple definition of `main'|
obj\Debug\main.o:E:\Documents\lv_pc_simulator\main.c|60|first defined here|
||error: ld returned 1 exit status|

解决:
**删除lv_pc_simulator\codeblocks\littleVGL\main.c


问题三:

||=== Build: Debug in littleVGL (compiler: GNU GCC Compiler) ===|
||WARNING: Can't read file's timestamp: E:\Documents\lv_pc_simulator\codeblocks\littleVGL\main.c|
E:\Documents\lv_pc_simulator\main.c||In function 'memory_monitor':|
E:\Documents\lv_pc_simulator\main.c|208|warning: implicit declaration of function 'printf' [-Wimplicit-function-declaration]|
E:\Documents\lv_pc_simulator\main.c|208|warning: incompatible implicit declaration of built-in function 'printf'|
E:\Documents\lv_pc_simulator\main.c|208|note: include '<stdio.h>' or provide a declaration of 'printf'|
 obj\Debug\codeblocks\littleVGL\main.o||No such file or directory|
||=== Build failed: 1 error(s), 3 warning(s) (0 minute(s), 8 second(s)) ===|

解决:
头文件自己添加个#include <stdio.h>


问题四:

||=== Build: Debug in littleVGL (compiler: GNU GCC Compiler) ===|
||WARNING: Can't read file's timestamp: E:\Documents\lv_pc_simulator\codeblocks\littleVGL\main.c|
 obj\Debug\codeblocks\littleVGL\main.o||No such file or directory|
||=== Build failed: 1 error(s), 1 warning(s) (0 minute(s), 8 second(s)) ===|

在没有删除lv_pc_simulator\codeblocks\littleVGL\main.c前就先添加了文件导致的。
解决:
littleVGL工程上右键——Properties...——Build targets——去掉main.c的勾选。
在这里插入图片描述


问题五:

由于找不到SDL2.dll,无法继续执行代码,重新安装程序可能会解决此问题。
在这里插入图片描述
SDL2-2.0.10\i686-w64-mingw32\bin 目录下的 SDL2.dll 文件拷贝到lv_pc_simulator\codeblocks\littleVGL\bin\Debug 目录下面。


参考:

正点原子《手把手教你学littleVGL》4.PC模拟器的使用。

  • 8
    点赞
  • 38
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值