在CentOS上编译安装llvm-3.8.1

注:CentOS版本是6.8,6.x版本的操作类似

安装需求:
  • Cmake: 3.4.3
  • Python: 2.7.9
  • GCC 4.8.2


一、安装gcc-4.8.2

wget http://people.centos.org/tru/devtools-2/devtools-2.repo -O /etc/yum.repos.d/devtools-2.repo
yum install devtoolset-2-gcc devtoolset-2-binutils devtoolset-2-gcc-c++


二、安装python-2.7.9

python的安装方法请参考其他相关教程
需要注意的是,安装完python-2.7.9后,yum会变得不可用,这时需要修改yum,让其还是使用2.6版本:
vim /usr/bin/yum

将第一行的
#!/usr/bin/python

修改为
#!/usr/bin/python2.6


三、安装llvm

这里需要注意,必须使用cmake来安装,如果用autotools安装,编译出来的不完全可用。
1)下载llvm源码
wget http://llvm.org/releases/3.8.1/llvm-3.8.1.src.tar.xz
tar xzf llvm-3.8.1.src.tar.xz
mv llvm-3.8.1.src llvm


2)下载clang源码
wget http://llvm.org/releases/3.8.1/cfe-3.8.1.src.tar.xz
tar xzf cfe-3.8.1.src.tar.xz
mv cfe-3.8.1.src llvm/tools/clang


3)下载compiler-rt源代码
wget http://llvm.org/releases/3.8.1/compiler-rt-3.8.1.src.tar.xz
tar xzf compiler-rt-3.8.1.src.tar.xz
mv compiler-rt-3.8.1.src llvm/projects/compiler-rt


4)编译llvm
cd llvm
mkdir build
cd build
export CC=/opt/rh/devtoolset-2/root/usr/bin/gcc
export CXX=/opt/rh/devtoolset-2/root/usr/bin/g++
cmake ..
cmake --build .
cmake --build . --target install

整个编译过程耗时近2个小时
详细编译参数请参考: http://llvm.org/docs/CMake.html

5)检查clang版本
# clang --version
clang version 3.8.1 (tags/RELEASE_381/final)


6)新的4.0.1版本也出来了,编译方法一致,但对系统要求更高。3.8.1一般2到4G内存即可成功编译,4.0.1在默认配置下(Debug模式)加到8G内存也卡死在91%左右的进度,硬盘也花了近20G。后改为Release编译,总算成功了,硬盘占用2.3G,估计4G内存也可以成功编译,没有再测试。

猜你喜欢

转载自velna-007.iteye.com/blog/2322939