升级GCC 6.2编译LLVM的问题

[ 55%] Built target RTInterception.x86_64
[ 55%] Building ASM object projects/compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.x86_64.dir/sanitizer_linux_x86_64.S.o
cc: error trying to exec 'cc1': execvp: No such file or directory
make[2]: *** [projects/compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.x86_64.dir/sanitizer_linux_x86_64.S.o] Error 1
make[1]: *** [projects/compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.x86_64.dir/all] Error 2
make: *** [all] Error 2

1 下载llvm

下载上面三个包得到
cfe-3.9.1.src.tar.xz
compiler-rt-3.9.1.src.tar.xz
llvm-3.9.1.src.tar.xz
解压
xz -d llvm-3.9.1.src.tar.xz
xz -d compiler-rt-3.9.1.src.tar.xz
xz -d cfe-3.9.1.src.tar.xz
tar xf llvm-3.9.1.src.tar
tar xf compiler-rt-3.9.1.src.tar
tar xf cfe-3.9.1.src.tar

将compiler-rt-3.9.1.src复制到llvm-3.9.1.src/tools下,并重命名为clang。将cfe-3.9.1.src复制到llvm-3.9.1.src/projects下,将重命名为compiler-rt。

cd llvm-3.9.1.src
mkdir build
cd build
cmake ../ -DCMAKE_CXX_COMPILER=/usr/local/bin/c++ -DCMAKE_C_COMPILER=/usr/local/bin/gcc
make

因为自己编译安装的gcc 6.2,原来的/usr/bin/gcc还在,所以指定自己编译器。(GCC 6.2 安装请点这里)。

出现如下错误:

[ 55%] Built target RTInterception.x86_64
[ 55%] Building ASM object projects/compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.x86_64.dir/sanitizer_linux_x86_64.S.o
cc: error trying to exec 'cc1': execvp: No such file or directory
make[2]: *** [projects/compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.x86_64.dir/sanitizer_linux_x86_64.S.o] Error 1
make[1]: *** [projects/compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.x86_64.dir/all] Error 2
make: *** [all] Error 2
添加cc1的链接

ln -s /usr/local/libexec/gcc/x86_64-pc-linux-gnu/6.2.0/cc1 /usr/local/bin/cc1

再次执行make,成功编译。为测试多个版本,不进行make install。


  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

枫竹梦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值