如何快速搭建仓颉 LLVM 编译环境:从 0 到 1 的 CMake 构建完全指南 如何快速搭建仓颉 LLVM 编译环境从 0 到 1 的 CMake 构建完全指南【免费下载链接】llvm-projectLLVM 项目是一个模块化、可复用的编译器及工具链技术的集合。此fork用于添加仓颉编译器的功能并支持仓颉编译器项目。项目地址: https://gitcode.com/Cangjie/llvm-project仓颉 LLVM 编译环境搭建其实只需要 3 条 CMake 命令。本仓库是基于 LLVM 15 的官方 fork在标准工具链之上增加了仓颉编译器所需的扩展能力包括支持仓颉语言表达式解析的 CJDB 调试器等本文带你用 CMake 从 0 到 1 完成构建。 先搞清楚这个 Fork 里有什么这个仓库是典型的 llvm-project monorepo核心目录如下目录作用llvm/LLVM 核心IR 优化、汇编器、位码分析等工具clang/C/C 前端编译器lldb/调试器含仓颉扩展CJDBlld/LLD 高性能链接器libcxx/libc 标准库运行时构建入口是 llvm/CMakeLists.txtCMake 最低版本要求 3.13.4LLVM 版本号为 15.0.4。下面这张图展示了本 fork 中 lldb 调试器对仓颉语言的支持架构——注意右下角的 Expressions Parser – Clang,Cangjie这就是 fork 的差异化所在 准备工作环境要求清单开始构建前对照清单检查一遍能帮你避开 90% 的坑CMake ≥ 3.13.4—— 建议直接装最新版C/C 编译器—— Linux 下推荐 GCC 7 或 ClangWindows 下需要 Visual Studio 2019构建生成器—— 推荐NinjaLLVM 开发者社区首选并行构建速度最快Make 也可以硬件—— 内存建议 16GB 以上LLVM 是全项目最大的 C 工程之一磁盘预留 10GB 官方对构建环境的完整说明见 llvm/docs/GettingStarted.rst 和 llvm/docs/CMake.rst。⬇️ 第 1 步克隆仓颉 LLVM 源码git clone https://gitcode.com/Cangjie/llvm-project cd llvm-project只想体验构建可以加--depth 1做浅克隆能显著节省时间和磁盘空间。 第 2 步CMake 配置核心三步法LLVM 官方不支持在源码目录内构建必须创建独立的 build 目录# ① 创建构建目录推荐放在仓库外或仓库根的 build 下 mkdir -p build # ② 配置指定生成器、构建类型、要启用的子项目 cmake -S llvm -B build \ -G Ninja \ -DCMAKE_BUILD_TYPERelease \ -DLLVM_ENABLE_PROJECTSclang;lldb;lld # ③ 并行构建-j 后接 CPU 核数Ninja 默认并行 cmake --build build就这么简单-S指定源码根目录-B指定构建输出目录这是 CMake 3.13 的标准写法。关键 CMake 参数速查表参数推荐值说明-GNinja生成器速度最快-DCMAKE_BUILD_TYPEReleaseDebug 用于改 LLVM 本身Release 用于日常使用体积更小、运行更快-DLLVM_ENABLE_PROJECTSclang;lldb;lld分号分隔按需启用的子项目-DLLVM_ENABLE_RUNTIMESlibcxx;libcxxabi运行时库如 libc-DCMAKE_INSTALL_PREFIX/usr/local安装路径默认即/usr/local-DLLVM_ENABLE_ASSERTIONSOn开启断言检查Debug 构建默认开启✅ 第 3 步验证构建结果构建完成后在 build 目录下运行版本检查./build/bin/llvm-config --version # 期望输出 15.0.4 ./build/bin/clang --version一切正常的话恭喜你——仓颉 LLVM 编译环境已经就位想跑完整回归测试套件执行cmake --build build --target check-all。各子项目也提供独立的check-clang、check-lldb等目标可快速验证单个模块。 常见问题快速排查❓ 构建中途内存不足 / OOM降低并行度cmake --build build -j 4或改用 Make 生成器并限制-j。❓ 配置阶段报 CMake 版本错误cmake_minimum_required(VERSION 3.13.4)在 llvm/CMakeLists.txt 中硬性声明升级 CMake 即可。❓ 想在 Windows 上构建使用cmake -G Visual Studio 17 2022并加上-Thostx64指定 64 位主机编译器避免链接器内存溢出。 延伸阅读完整 CMake 选项参考llvm/docs/CMake.rst新手入门流程llvm/docs/GettingStarted.rst进阶构建技巧交叉编译、PGO 等llvm/docs/AdvancedBuilds.rstCMake 语言入门llvm/docs/CMakePrimer.rst仓库贡献规范CONTRIBUTING.md总结安装 CMake Ninja →git clone→ 一条cmake -S llvm -B build配置 →cmake --build build并行构建。从 0 到可用环境10 分钟就能走完全流程剩下的时间交给 CPU 吧【免费下载链接】llvm-projectLLVM 项目是一个模块化、可复用的编译器及工具链技术的集合。此fork用于添加仓颉编译器的功能并支持仓颉编译器项目。项目地址: https://gitcode.com/Cangjie/llvm-project创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考