网站首页 > 开源技术 正文
大家好,我是杂烩君。
嵌入式大杂烩周记主要是一些实用项目学习分享,每周一篇,每篇一个主题。
内容主要来源于我们之前收集的资料:
https://gitee.com/zhengnianli/EmbedSummary
最新的 rt-thread 主仓库,支持使用 xmake 工具来编译 rt-thread 工程:使用 xmake 工具编译 rt-thread 工程
本期主角:xmake
同cmake一样,xmake也是一个跨平台的安装(编译)工具,是个国产工具。
xmake 是一个基于 Lua 的轻量级跨平台构建工具,使用 xmake.lua 维护项目构建,相比 makefile/CMakeLists.txt,配置语法更加简洁直观,对新手非常友好,短时间内就能快速入门,能够让用户把更多的精力集中在实际的项目开发上。
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的使用
下面我们一起来安装、使用,直观地认识一下:
针对不同的环境,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 来查看:
我们可以直接通过命令来创建一个工程。
创建一个C语言工程,输入命令:
xmake create -l c -P ./c_test
创建一个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 :
如果文章对你有帮助,麻烦帮忙点赞、收藏、转发,谢谢!
猜你喜欢:
给“嵌入式大杂烩读者”整理了一个嵌入式实用项目汇总仓库,私信回复1024,即可看到链接
猜你喜欢
- 2024-09-14 unity3d开发教程-初始unity(unity3d游戏开发教程)
- 2024-09-14 lua程序在板块模型中的计算机仿真
- 2024-09-14 杨洋回应片酬和演技质疑:演戏是我一辈子的事情
- 2024-09-14 unity3d开发教程-开发环境搭建(unity3d 开发)
- 2024-09-14 c的包管理和构建工具xmake(c语言包管理器)
- 2024-09-14 Nginx内容缓存(nginx内存缓存)
- 2024-09-14 xmake从入门到精通1:安装和更新(xmake github)
- 2024-09-14 Lua 运算符(ll运算符)
- 2024-09-14 【LUA】只需花费你半天时间(我要花费半天的时间)
- 2024-09-14 在.NET Core 中收集数据的几种方式
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- jdk (81)
- putty (66)
- rufus (78)
- 内网穿透 (89)
- okhttp (70)
- powertoys (74)
- windowsterminal (81)
- netcat (65)
- ghostscript (65)
- veracrypt (65)
- asp.netcore (70)
- wrk (67)
- aspose.words (80)
- itk (80)
- ajaxfileupload.js (66)
- sqlhelper (67)
- express.js (67)
- phpmailer (67)
- xjar (70)
- redisclient (78)
- wakeonlan (66)
- tinygo (85)
- startbbs (72)
- webftp (82)
- vsvim (79)
本文暂时没有评论,来添加一个吧(●'◡'●)