最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

win下VSCode with SDL2配置LVGL模擬器開發(fā)環(huán)境

2023-07-11 17:52 作者:有AI野心的電工和碼農(nóng)  | 我要投稿

0. 序言

上篇文章基于MSYS2的MINGW64 GCC和CMake在Win下VSCode里搭建SDL2開發(fā)環(huán)境?中, 我們在VSCode里搭建好了SDL2的開發(fā)環(huán)境, 以此為基礎, 本文我們要搭建起LVGL模擬器的開發(fā)環(huán)境, 達到我們的最終目的.

本文也有個所謂的參考文章https://my.oschina.net/u/5732601/blog/5518641.

它和上篇文章中的參考文章是同一個作者的系列文章.

如果說上一篇的參考文章只是有些不詳細不嚴謹和一些小坑的話, 那這篇參考文章就是巨坑!!

我一開始自然是參考它的方法操作, 可是編譯始終是一堆錯誤, 怎么都編譯不過. 我被它坑慘了, 掉在坑里, 想了各種方法, 各種嘗試, 浪費了多少腦細胞, 浪費了大半天的時間, 還是爬不出來.

最終幡然醒悟, 拋棄它, 按照自己的理解, 摸索出自己的方法, 輕松搞定! 唉…

接下來本文就描述一下我摸索出的方法.

1. 基于LVGL最新版源碼 的模擬器

1.1 下載代碼

我在網(wǎng)上看到很多搭建LVGL模擬器的文章, 都是基于github上lvgl/lv_port_pc_eclipse這個代碼倉庫來做的.

我們也選擇它, 雖然它是For eclipse的, 其實只是目錄下多了些eclipse相關的工程文件, 我們不用不理這些文件便是.

它也是用CMake編譯的, 所以其實只要把這個倉庫代碼clone下來, 稍稍修改一下根目錄下的CMakeList.txt文件即可順利編譯成功.

我摸索出的方法就是如此, 一點也不復雜麻煩, 改動的也很少.

下圖是當前(@20230330)lvgl/lv_port_pc_eclipse這個倉庫的一個截圖:

可看到, 其下只有一個文件夾lvgl, 是個外鏈倉庫, 就是LVGL本體的源碼, 不過它不是LVGL源碼的master分支(master分支目前是穩(wěn)定版V8.3), 而是正在開發(fā)中V9.0的最新版分支(73b4460)代碼, 倉庫地址:?https://github.com/lvgl/lvgl/tree/73b446015a06055e984cc26e5cba744096409895

下圖是此倉庫的當前截圖.

BTW: 跑題一下, 在上圖里, .gitignor這一行, 可發(fā)現(xiàn) 最新版的LVGL已經(jīng)支持中文的拼音輸入了, nice.

最正確的下載代碼的方法, 應該是用下面命令就可以把所有代碼都clone下來了.

git clone --recursive https://github.com/lvgl/lv_port_pc_eclipse.git

但是, 以往的經(jīng)驗, 眾所周知的原因, 我們直接從github clone代碼是很艱難的, 特別是這種帶外鏈倉庫的情況就更惱火.

所以, 我用的是下載zip的方式, 分別把2個倉庫下載好, 然后再組裝在一起.

不管用什么方法, 代碼準備好就OK.

1.2 修改CMakeList.txt

打開代碼根目錄下的CMakeList.txt文件, 內(nèi)容如下:

我修改后如下:

僅修改了5行:

  • 注釋掉了原文中關于SDL2的2行, 因為我們要加入SDL2的庫鏈接

  • 加入3行庫鏈接target_link_libraries, 而且這3行和上一篇"搭建SDL開發(fā)環(huán)境"中測試程序里修改的一樣

另外, 我還將 編譯目標--可執(zhí)行文件名 改成了aaa, 這一點可以不用改

1.3 編譯運行

OK, 都改好了, VSCode打開此代碼目錄就可以直接F7編譯了.

不過這里有個需注意點, "編譯目標--可執(zhí)行文件名" 要和?代碼根目錄名?一致, 否則也會編譯出錯.

編譯成功后, 會在根目錄的bin目錄下 生成exe文件, 運行效果如下:

2. 基于LVGL V7版 的模擬器

由于我的嵌入式設備上跑的是LVGL V7.11版本, 而且LVGL V8相對于V7變動不小, 很多API函數(shù)都變了.

所以我的模擬器的版本最好還是要用V7的, 唉, 還要繼續(xù)搞.

不過搞定了一次, 套路都是一樣的.

2.1 下載V7版代碼

還是先下載代碼, 還是在lvgl/lv_port_pc_eclipse這個倉庫頁面,

可看到這里有11個分支, 點進去

再點這里, 就可打開V7.0分支的代碼倉庫

這個代碼倉庫的情況如下圖:

有3個子目錄, 且都是外鏈倉庫

  • lv_drivers(分支ccf30bf):?https://github.com/lvgl/lv_drivers/tree/ccf30bf0c3dd9b1000de6c68cc6b0b6683303770

  • lv_examples(lv_demos分支51537bf):?https://github.com/lvgl/lv_demos/tree/51537bf46e77f4e99e3fb94131b1e54da981c4f4

  • lvgl(分支aad8667):?https://github.com/lvgl/lvgl/tree/aad8667a9f9dce82f719aec24f64dbe42f729ad0

還是用和前面一樣的方法, 不管使用git clone --recursive命令, 還是下載zip組裝, 把代碼準備好就行.

2.2 修改CMakeList.txt

CMakeList.txt的修改套路還是一樣, 我就直接放出我修改后的內(nèi)容了

同樣的方法, 注釋掉它原文關于SDL2的行, 把我的3行target_link_libraries(...)加進去, 就改好了!

2.3 編譯運行

還是要注意?編譯目標--可執(zhí)行文件名?和?代碼根目錄名?的一致.

編譯運行, 效果如下

OK, 全部搞定!


win下VSCode with SDL2配置LVGL模擬器開發(fā)環(huán)境的評論 (共 條)

分享到微博請遵守國家法律
阿拉善左旗| 黑水县| 安达市| 四会市| 皮山县| 即墨市| 金湖县| 方山县| 昌邑市| 闽侯县| 卓资县| 正阳县| 林甸县| 枣强县| 乌拉特后旗| 马关县| 延津县| 怀仁县| 仙居县| 南阳市| 彭山县| 德江县| 东阳市| 拜泉县| 西乌珠穆沁旗| 修文县| 秦安县| 荣成市| 同德县| 抚州市| 会宁县| 德昌县| 赤峰市| 青龙| 金昌市| 西乌| 米泉市| 称多县| 介休市| 蒙自县| 高淳县|