當前位置:首頁 > 公眾號精選 > 嵌入式大雜燴
[導讀]星標「嵌入式大雜燴」,一起進步!大家好,我是ZhengN。本次給大家分享一個優(yōu)秀的跨平臺構建工具。在我們嵌入式中,開發(fā)環(huán)境多種多樣。在windows下進行開發(fā),有各種好用的IDE給我們使用,我們可以圖形化地創(chuàng)建工程、配置工程、編譯工程。在Linux下,可能就iu沒有那么“方便”了...



大家好,我是ZhengN。本次給大家分享一個優(yōu)秀的跨平臺構建工具。


在我們嵌入式中,開發(fā)環(huán)境多種多樣。在windows下進行開發(fā),有各種好用的IDE給我們使用,我們可以圖形化地創(chuàng)建工程、配置工程、編譯工程。在Linux下,可能就iu沒有那么“方便”了。


在Linux下進行嵌入式開發(fā),我們需要使用gcc、make、cmake等工具來編譯。


  • 源文件較少時可以使用直接調用gcc工具進行編譯。


  • 源碼文件較多時,可借用make工具。make通過解析Makefile文件來執(zhí)行一些gcc命令進行編譯。


  • 簡單的項目,Makefile還可以自己寫一寫。但實際項目中,我們很少直接編寫Makefile,而是借助cmake工具來生成。cmake根據一個CMakeLists.txt文件來生成不同平臺的Makefile文件,達到跨平臺的作用。


已經會Makefile了,還有沒有必要學習CMakeLists.txt?關于這個問題,網上各路大神都有自己的一些看法:


  • 反對學習cmake、CMakeLists.txt的理由大概是:增加學習成本、不跨平臺不需要學 cmake等。


  • 支持學習cmake、CMakeLists.txt的理由大概是:跨平臺、管理大型項目簡單、易擴展、高效率等。


我覺得還是有必要學一下的,能用上的概率比較大。關于cmake的學習,強烈推薦一篇博文:


分享一篇很不錯的CMake入門文章,值得收藏細讀!


cmake相關推文:


實用 | 使用Cmake快速生成visual studio工程


手把手教你在Windows下編譯、使用開源庫


xmake簡介

同cmake一樣,xmake也是一個跨平臺的安裝編譯工具,是個國產工具。


之前分享的 TBOX | 一個用c語言實現的跨平臺開發(fā)庫,就是使用xmake來管理的。


xmake 是一個基于 Lua 的輕量級跨平臺構建工具,使用 xmake.lua 維護項目構建,相比 makefile/CMakeLists.txt,配置語法更加簡潔直觀,對新手非常友好,短時間內就能快速入門,能夠讓用戶把更多的精力集中在實際的項目開發(fā)上。


xmake官網:


https://xmake.io/


1、支持的平臺

  • Windows (x86, x64)
  • macOS (i386, x86_64, arm64)
  • Linux (i386, x86_64, cross-toolchains ..)
  • *BSD (i386, x86_64)
  • Android (x86, x86_64, armeabi, armeabi-v7a, arm64-v8a)
  • iOS (armv7, armv7s, arm64, i386, x86_64)
  • WatchOS (armv7k, i386)
  • MSYS (i386, x86_64)
  • MinGW (i386, x86_64, arm, arm64)
  • Cygwin (i386, x86_64)
  • Wasm (wasm32)
  • Cross (cross-toolchains ..)

2、支持的工具鏈

3、支持的語言

  • C/C
  • Objc/Objc
  • Swift
  • Assembly
  • Golang
  • Rust
  • Dlang
  • Fortran
  • Cuda
  • Zig (Experimental)

4、編譯測試

多任務并行編譯測試:


單任務編譯測試:


官網上的內容很豐富,對xmake做了很詳細的介紹,感興趣的小伙伴可以自己去了解學習。


xmake安裝、使用

下面我們一起來安裝、使用,直觀地認識一下:


針對不同的環(huán)境,xmake有多種安裝方式。


Ubuntu下可使用wget或curl安裝,安裝命令:


bash <(wget https://xmake.io/shget.text -O -)
或:


bash <(curl -fsSL https://xmake.io/shget.text)
下面我們使用curl來安裝:


xmake的參數很豐富,通過命令 xmake create --help來查看:


我們可以直接通過命令來創(chuàng)建一個工程。


創(chuàng)建一個C語言工程,輸入命令:


xmake create -l c -P ./c_test
創(chuàng)建一個C 工程,輸入命令:


xmake create -l c  -P ./cpp_test
這里的 -l參數指定工程所用的編程語言, -P參數指明工程的名稱。其中xmake.lua就類似于cmake的CMakeLists.txt文件。里面的內容如:


target("c_test")
set_kind("binary")
add_files("src/*.c")
其語法類似于CMakeLists.txt但看起來比CMakeLists.txt更簡潔。


構建工程,輸入命令 xmake:


運行程序,輸入命令 xmake run c_test:


調試程序,輸入命令 xmake run -d c_test:


關于跨平臺工具,目前用得比較多的自然是cmake,但大家也可以持續(xù)關注一下xmake這一款優(yōu)秀的構建工具,說不定后面會火~


以上就是本次關于xmake的分享,咱們下期見~



往期推薦:


嵌入式狀態(tài)機編程-QP狀態(tài)機框架與常見狀態(tài)機


Linux下嵌入式開發(fā)學習建議!


在公眾號聊天界面回復1024,可獲取嵌入式資源;回復 m ,可查看文章匯總。



點擊閱讀原文,查看更多分享



本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內容真實性等。需要轉載請聯系該專欄作者,如若文章內容侵犯您的權益,請及時聯系本站刪除。
關閉
關閉