如题网上已经有很多资料了,在这里写是想给大家分享被折磨两天以后小小的心得,参考的博客如下,可以根据需要选择自己要用的版本:
源码编译安装llvm/clang以及编译过程中memory exhaust问题的解决_源码编译clang-CSDN博客
Linux系统无痛编译安装LLVM简明指南_编译llvm-CSDN博客
如果一定要跑完整的,还可以参考这个博客避免出错:
llvm编译失败几句话总结 - voyage1969 - 博客园 (cnblogs.com)
注意:我的虚拟机有16G内存!!!
如果你和我一样是为了使用debug版本的,那么可以考虑以下步骤:
源代码国内下载可以参考上面的博客,就不再赘述了。编译步骤如下:
cd llvm-projrct
mkdir build
cd build
此时关键的点出现了,为了提高编译速度,减少内存的使用(这样跑大概需要十多G),可以考虑以下代码,如果是release版本可以加这个 -DCMAKE_BUILD_TYPE=Release (个人建议还是加上,不然会很大),默认是debug版本:
cmake -G "Ninja" -DLLVM_ENABLE_PROJECTS=clang -DLLVM_USE_LINKER=gold -DLLVM_TARGETS_TO_BUILD=X86 ../llvm
这样就可以只编译x86平台(x86_64也可以)下的代码,一下子从五千多条变成了近三千条。
接着使用如下代码,记得提权不然会报错,这个过程我大概跑了半个小时:
ninja && ninja install
最后验证是否成功。
clang --version
如果过大给大家一个扩容的参考方法:Ubuntu20文件系统磁盘空间不足low disk space on filesystem root-CSDN博客