

新闻资讯
技术学院xmake构建C++项目只需三步:初始化、编写xmake.lua、执行命令;它跨平台、免手写Makefile/CMakeLists,原生支持C++20模块、PCH和包管理。
用 xmake 构建 C++ 项目,核心就三步:初始化项目、写好 xmake.lua、执行构建命令。它不依赖 CMake 的复杂语法,也不需要手写 Makefile,配置简洁、跨平台、原生支持现代 C++ 特性(如 C++20 模块、预编译头、包管理)。
在终端中执行:
xmake create -l c++ -t console myproject —— 创建一个带 main.cpp 的控制台项目cd myprojectxmake —— 默认编译为 debug 版本,输出在 build/
xmake run —— 直接运行生成的可执行文件整个过程无需手动配置编译器或链接选项,xmake 自动探测系统环境(GCC/Clang/MSVC)并选择合适标准(默认 C++17)。
这是 xmake 的核心配置文件,替代了 CMakeLists.txt。例如启用 C++20 并链接第三方库:
add_rules("mode.debug", "mode.release")
target("hello")
set_kind("binary")
add_files("src/*.cpp")
set_languages("cxx20") -- 显式启用 C++20
add_packages("fmt", "nlohmann_json") -- 自动下载并链接
常用
设置说明:
set_languages("cxx20") 或 "c23":指定语言标准add_cxxflags("-fconcepts"):添加特定编译器扩展add_defines("NDEBUG"):定义宏add_includedirs("include"):添加头文件搜索路径xmake 原生支持 C++20 Modules 和预编译头(PCH),无需插件:
xmake.lua 中启用 add_rules("c++.modules"),然后用 add_files("src/module.ixx") 添加模块接口文件add_headerfiles("src/stdafx.h") + set_pcheader("src/stdafx.h") 即可自动处理add_requires("boost", {system = true}) 优先用系统包,失败则自动从 conan/vcpkg/xmake-repo 拉取xmake 输出统一构建目录,支持多配置并行构建:
xmake -p windows -a x64 -m release:指定平台、架构、模式xmake clean -a:清理所有平台构建产物xmake project -k vsxmake:生成 Visual Studio 工程(仅用于编辑,不用于构建)xmake install --destdir=./output 即可打包可部署产物所有命令行为一致,Windows/macOS/Linux 上脚本几乎不用修改。