c++ xmake构建系统怎么用 c++现代化构建工具【指南】

9次阅读

xmake 构建 C ++ 项目只需三步:初始化、编写 xmake.lua、执行命令;它跨平台、免手写 Makefile/CMakeLists,原生支持 C ++20 模块、PCH 和包管理。

c++ xmake 构建系统怎么用 c++ 现代化构建工具【指南】

用 xmake 构建 C++ 项目,核心就三步:初始化项目、写好 xmake.lua、执行构建命令。它不依赖 CMake 的复杂语法,也不需要手写 Makefile,配置简洁、跨平台、原生支持现代 C++ 特性(如 C++20 模块、预编译头、包管理)。

快速上手:新建并构建一个 C++ 项目

在终端中执行:

  • xmake create -l c++ -t console myproject —— 创建一个带 main.cpp 的控制台项目
  • cd myproject
  • xmake —— 默认编译为 debug 版本,输出在 build/
  • xmake run —— 直接运行生成的可执行文件

整个过程无需手动配置编译器或链接选项,xmake 自动探测系统环境(GCC/Clang/MSVC)并选择合适标准(默认 C++17)。

配置 xmake.lua:声明目标与特性

这是 xmake 的核心 配置文件,替代了 CMakeLists.txt。例如启用 C++20 并链接第三方库:

立即学习C++ 免费学习笔记(深入)”;

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"):添加头文件搜索路径

集成现代开发需求:模块、PCH、包管理

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 工程(仅用于编辑,不用于构建)
  • CI 中只需 xmake install --destdir=./output 即可打包可部署产物

所有命令行为一致,Windows/macOS/Linux 上脚本几乎不用修改。

星耀云
版权声明:本站原创文章,由 星耀云 2025-12-29发表,共计1323字。
转载说明:转载本网站任何内容,请按照转载方式正确书写本站原文地址。本站提供的一切软件、教程和内容信息仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。
text=ZqhQzanResources