LVGL系列
一、LVGL移植
LVGL系列1--AT32移植LVGL_V8具体步骤
LVGL系列2--linux + lvglv8 + vscode 移植
二、输入设备
文章目录
- LVGL系列
- 一、新建文件夹并克隆源码
- [官方仓库 7.11.0](#官方仓库 7.11.0)
- [官方仓库 最新版](#官方仓库 最新版)
- 如果上面clone失败或者太慢,使用下面的链接
- 同步到gitee上的,包括子模块,会快很多
- 子模块拉取失败时执行
- 二、新建下列文件
-
- [1.obj 文件夹,用于存放编译生成的中间文件,并在obj中添加实际的顶层Makefile](#1.obj 文件夹,用于存放编译生成的中间文件,并在obj中添加实际的顶层Makefile)
- 2.为了可以直接在根目录编译,所以在根目录创建一个Makefile加入如下脚本这样就可以直接在根目录进行make了
- 3.自己新建文件夹下内容
一、新建文件夹并克隆源码
cpp
mkdir lvgl_proj
cd lvgl_proj
git clone -b v8.X.0 --depth=1 https://github.com/lvgl/lvgl.git
git clone -b v8.X.0 --depth=1 https://github.com/lvgl/lv_drivers.git
//不用Demo可以不clone
git clone -b v8.X.0 --depth=1 https://github.com/lvgl/lv_demos.git
上面的不好
直接用下面的方法,拉取子分支即可
二、lv_sim_vscode_sdl 获取
lv_sim_vscode_sdl:VSCode with SDL driver: Linux 和 Mac
官方仓库 7.11.0
git clone -b 7.11.0 --recursive https://github.com/lvgl/lv_sim_vscode_sdl.git
官方仓库 最新版
git clone --recursive https://github.com/lvgl/lv_sim_vscode_sdl
如果上面clone失败或者太慢,使用下面的链接
同步到gitee上的,包括子模块,会快很多
git clone --recursive https://gitee.com/JavonPeng/lvgl_vscode_sdl.git
改成自己的链接
子模块拉取失败时执行
git submodule update --init --recursive
二、新建下列文件
1.obj 文件夹,用于存放编译生成的中间文件,并在obj中添加实际的顶层Makefile
Makefile内容为:
cpp
CC = arm-linux-gcc // buildroot 自带的gcc,与板子编译跟文件的gcc保持一致
LVGL_DIR ?= /home/wd/linuxdev/LVGL_V8_Lichee/LVGL_V8 //根目录 这里一定要根据自己目录改
LVGL_DIR_NAME ?= lvgl
CFLAGS ?= -O3 -g0 -I$(LVGL_DIR)/
LDFLAGS ?= -lm
BIN = lvgl_demo
MAINSRC = ../main.c
include $(LVGL_DIR)/lvgl/lvgl.mk
include $(LVGL_DIR)/lv_drivers/lv_drivers.mk
include $(LVGL_DIR)/MY_UI/MY_UI.mk //这里是自己添加的mk文件
OBJEXT ?= .o
AOBJS = $(ASRCS:.S=$(OBJEXT))
COBJS = $(CSRCS:.c=$(OBJEXT))
MAINOBJ = $(MAINSRC:.c=$(OBJEXT))
SRCS = $(ASRCS) $(CSRCS) $(MAINSRC)
OBJS = $(AOBJS) $(COBJS)
all: default
%.o: %.c
@$(CC) $(CFLAGS) -c $(INCLUDES) $< -o $@
@echo "CC $<"
default: $(AOBJS) $(COBJS) $(MAINOBJ)
$(CC) -o $(BIN) $(MAINOBJ) $(AOBJS) $(COBJS) $(LDFLAGS)
cp $(BIN) ../
clean:
rm -f $(BIN) $(AOBJS) $(COBJS) $(MAINOBJ)
2.为了可以直接在根目录编译,所以在根目录创建一个Makefile加入如下脚本这样就可以直接在根目录进行make了
内容为:
cpp
all:
make -C obj
clean:
make clean -C obj
3.自己新建文件夹下内容
MY_UI.mk
cpp
CSRCS += $(shell find -L $(LVGL_DIR)/MY_UI -name "*.c")