在ubuntu22上编译llvm

本文分享了在Linux上编译LLVM/Clang过程中遇到的内存耗尽问题解决方案,包括使用CMake配置减少编译规模、指定release版本以减小内存需求,以及处理磁盘空间不足的方法。
摘要由CSDN通过智能技术生成

如题网上已经有很多资料了,在这里写是想给大家分享被折磨两天以后小小的心得,参考的博客如下,可以根据需要选择自己要用的版本:

源码编译安装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博客

  • 10
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值