首页 > 系统相关 >将SquareLine Studio导出的LVGL代码在windows上运行

将SquareLine Studio导出的LVGL代码在windows上运行

时间:2024-02-21 15:14:52浏览次数:29  
标签:SquareLine SDL2 windows PROJECT SOURCES Studio SOURCE SDL DIR

1. 引入SDL驱动

SquareLine Studio导出的LVGL代码后如果要在windows上运行需要引入SDL的驱动,官方导出的代码是没有的,这里提供一个自己在网上找到的SDL2-2.28.1包,解压后放在同一目录下即可

2. 编写CmakeLists.txt

这里提供我这边自己修改的CmakeLists.txt

cmake_minimum_required(VERSION 3.10)

project(lvglProject C)

set(CMAKE_C_STANDARD 11)
set(CMAKE_CXX_STANDARD 11)

list(APPEND CMAKE_PREFIX_PATH ${CMAKE_CURRENT_SOURCE_DIR}/SDL2-2.28.1)

find_package(SDL2 REQUIRED SDL2)
include_directories(
    ${SDL2_INCLUDE_DIRS}
    ${SDL2_INCLUDE_DIRS}/../
    ${PROJECT_SOURCE_DIR}
    ${PROJECT_SOURCE_DIR}/lvgl
    ${PROJECT_SOURCE_DIR}/lv_drivers
    ${PROJECT_SOURCE_DIR}/ui
)

file(GLOB_RECURSE LVGL_SOURCES CONFIGURE_DEPENDS lvgl/*.c)
file(GLOB_RECURSE LV_DRIVERS_SOURCES CONFIGURE_DEPENDS lv_drivers/*.c)
file(GLOB_RECURSE UI_SOURCES CONFIGURE_DEPENDS ui/*.c)

add_executable(${PROJECT_NAME} main.c ${LVGL_SOURCES} ${LV_DRIVERS_SOURCES} ${UI_SOURCES})

string(STRIP "${SDL2_LIBRARIES}" SDL2_LIBRARIES)

target_link_libraries(${PROJECT_NAME} PRIVATE ${SDL2_LIBRARIES})

3. 使用构建工具进行构建

我使用的是MingGW进行构建,正常会报错,这里需要在main.c这里添加一个宏

#define main SDL_main

然后可以构建出exe,但是如果直接运行的话会报错,因为少了SDL的动态链接库,这里文末也提供SDL的动态链接库的链接,直接放在和exe执行文件同一个目录下即可

sdl下载链接

标签:SquareLine,SDL2,windows,PROJECT,SOURCES,Studio,SOURCE,SDL,DIR
From: https://www.cnblogs.com/yozima/p/18025241

相关文章

  • windows 通过 bat 快速修改 ip 地址
    先将以下内容填写到一个txt文件中,然后另存为修改网络IP.bat文件编码选择ANSI否则会出现乱码。@echooffrem强制获取管理员权限%1mshtavbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c%~s0::","","runas",1)(window.close)&&am......
  • 使用NSSM 把 .net core 开发的控制台程序部署成windows 服务
    0.背景应工作需要需要写个对指定网站附件进行监控,发现有新附件时需要程序进行自动下载,程序设计使用技术如下:开发语言:.net8C# 定时任务:Quartzhttp请求和下载:HttpClienthtml解析:HtmlAgilityPack服务部署工具:NSSM 1.什么是NSSM在windows平台NSSM可以把bat、exe等文件......
  • Windows bat批处理+PowerShell获取文件日期 和 时分秒
    前言全局说明Windowsbat批处理+PowerShell获取文件秒一、说明二、分开获取日期和时分秒获取bat文件自身的日期时间和时分秒1.源码文件名:get-file-second.bat@echooffchcp65001>nulecho.echo.setbak_file=get-file-second.bat::获取文件修改时间setloc......
  • Invicti Enterprise v24.1.0 for Windows - 企业应用安全测试
    InvictiEnterprisev24.1.0forWindows-企业应用安全测试InvictiEnterpriseOn-Premises09Jan2024v24.1.0请访问原文链接:InvictiEnterprisev24.1.0forWindows-企业应用安全测试,查看最新版。原创作品,转载请保留出处。作者主页:sysin.orgInvicti是一种自动化但......
  • SonarQube 10.4 (macOS, Linux, Windows) - 清洁代码 (Clean Code)
    SonarQube10.4(macOS,Linux,Windows)-清洁代码(CleanCode)SonarQubeDataCenterEdition(JavaAppformacOS,Linux,Windows)请访问原文链接:SonarQube10.4(macOS,Linux,Windows)-清洁代码(CleanCode),查看最新版。原创作品,转载请保留出处。作者主页:sysin.or......
  • Studio 3T 2024.1 (macOS, Linux, Windows) - MongoDB 的专业 GUI、IDE 和 客户端,支持
    Studio3T2024.1(macOS,Linux,Windows)-MongoDB的专业GUI、IDE和客户端,支持自然语言查询TheprofessionalGUI,IDEandclientforMongoDB请访问原文链接:Studio3T2024.1(macOS,Linux,Windows)-MongoDB的专业GUI、IDE和客户端,支持自然语言查询,查看最新版......
  • Windows 10 修改文件的创建时间为修改时间(相册恢复)
    参考gpt环境软件/系统版本说明WindowsWindows10专业版22H219045.4046正文创建change_creation_time.ps1文件。#将文件的创建时间修改为修改时间functionChange-FileCreationTimeToModifyTime($filePath){$file=Get-Item$filePath......
  • Windows高精度定时器
     自从上次封装微秒延时函数后,利用空闲时间试着封装一个微秒定时器(类似MFC定时器形式)使用起来效果还不错。 关于定时器的几点介绍:  1.设计采用了自动释放定时器节点方式(增加虚析构函数在内部做相关释放判断,即使用完不释放节点也没关系);  2.设计采用了双向链表方......
  • windows node管理工具nvm
    nvm全名node.jsversionmanagement,是一个nodejs的版本管理工具。通过它可以安装和切换不同版本的nodejs。首先最重要的是:一定要卸载已安装的NodeJS,否则会发生冲突。 卸载程序确保在Node.js没有在后台运行的情况下,进行卸载。可以先打开软件,关闭后到控制面板中找到node.js......
  • 一文搞懂Flink Window机制 Windows和 Function 和 Process组合处理事件
    一文搞懂FlinkWindow机制和Function和Process组合处理事件Windows是处理无线数据流的核心,它将流分割成有限大小的桶(buckets),并在其上执行各种计算。Windows是处理无线数据流的核心,它将流分割成有限大小的桶(buckets),并在其上执行各种计算。窗口化的Flink程......