LVGL系列2--linux + lvglv8 + vscode 移植

ops/2024/10/18 7:45:37/

LVGL系列

一、LVGL移植

LVGL系列1–AT32移植LVGL_V8具体步骤
LVGL系列2–linux + lvglv8 + vscode 移植

二、输入设备

LVGL系列3–纯物理(外部)按键,数字键盘控制控件

文章目录

  • LVGL系列
    • 一、LVGL移植
    • 二、输入设备
  • 一、新建文件夹并克隆源码
  • 官方仓库 7.11.0
  • 官方仓库 最新版
  • 如果上面clone失败或者太慢,使用下面的链接
  • 同步到gitee上的,包括子模块,会快很多
  • 子模块拉取失败时执行
  • 二、新建下列文件
    • 1.obj 文件夹,用于存放编译生成的中间文件,并在obj中添加实际的顶层Makefile
    • 2.为了可以直接在根目录编译,所以在根目录创建一个Makefile加入如下脚本这样就可以直接在根目录进行make了
    • 3.自己新建文件夹下内容

一、新建文件夹并克隆源码

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内容为:

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了

内容为:

all:make -C obj
clean:make clean -C obj

3.自己新建文件夹下内容

在这里插入图片描述
MY_UI.mk

CSRCS += $(shell find -L $(LVGL_DIR)/MY_UI -name "*.c")

http://www.ppmy.cn/ops/98073.html

相关文章

3.5、matlab打开显示保存点云文件(.ply/.pcd)以及经典点云模型数据

1、点云数据简介 点云数据是三维空间中由大量二维点坐标组成的数据集合。每个点代表空间中的一个坐标点,可以包含有关该点的颜色、法向量、强度值等额外信息。点云数据可以通过激光扫描、结构光扫描、摄像机捕捉等方式获取,广泛应用于计算机视觉、机器人视觉、地图建模、三维…

在uniapp中使用swicth组件传递额外的参数方法

switch 开关选择器。 传多个参数时可以这样传参 <switch :checked"scope.row.status" change"event>switchChangeStatus(event, scope.row)" />

Windows All download

前言 微软家族产品下载HEU_KMS_Activator download Windows PC desktop download 微软官网all 地址&#xff0c;地址1国内镜像地址&#xff0c;地址1 Windows 常规使用&#xff0c;运维&#xff0c;部署csdn 专栏 &#xff0c;付费专栏 参考 版本微软官网Windows 7,8,10,…

linux 升级安装git 2.34.1

1. 官网下载安装包 Git https://www.kernel.org/pub/software/scm/git/git-2.34.1.tar.gz 2. 解压安装包 tar -zxvf git-2.34.1.tar.gz 3. 卸载之前 yum remove git 4. 安装编译环境 yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc p…

CocosCreator3.8 IOS 构建插屏无法去除的解决方案

CocosCreator3.8 IOS 构建插屏无法去除的解决方案 在实际项目开发过程中&#xff0c;我们通常无需CocosCreator 自带的插屏&#xff0c;一般采用自定义加载页面。 然后在构建IOS 项目时&#xff0c;启用&#xff08;禁用&#xff09;插屏无法操作&#xff0c;如下图所示&#…

Elasticsearch 不允许直接修改现有索引的映射来添加新字段

由于 Elasticsearch 不允许直接修改现有索引的映射来添加新字段&#xff0c;您需要采取以下步骤来添加新字段&#xff1a; 1. **创建新索引**: 创建一个新的索引&#xff0c;包含原始字段和您想要添加的新字段 content。 json PUT /new_article { "mapping…

设计一个登录系统时,分布式如何保证

设计一个分布式登录系统时&#xff0c;需要确保系统的可靠性、安全性和可扩展性。分布式系统的登录功能需要处理用户认证、授权、会话管理等方面&#xff0c;并且要在多个服务器或服务实例之间保持一致。以下是设计分布式登录系统时需要考虑的一些关键点&#xff1a; 1 . 用户…

Win10安装ChatTTS-2024-cuda10.1

0x00 前言 ChatTTS是专门为对话场景设计的文本转语音模型&#xff0c;例如大语言助手对话任务。它支持英文和中文两种语言。最大的模型使用了10万小时以上的中英文数据进行训练。目前在huggingface中的开源版本为4万小时训练且未SFT的版本。 0x01 准备环境 版本操作系统Win1…