在Linux CentOS上编译并安装Clang 3.5.0
来源:互联网 发布:淘宝刷机 编辑:程序博客网 时间:2024/05/16 11:19
执行 install.sh --clang-completer时候出现这种情况请问怎么处理?
STDERR:
Your C++ compiler supports C++11, compiling in that mode.
Downloading Clang 3.5
CMake Error at ycm/CMakeLists.txt:62 (message):
No pre-built Clang 3.6 binaries for 32 bit linux. You'll have to compile
Clang 3.6 from source. See the YCM docs for details on how to use a
user-compiled libclang.
STDERR:
Your C++ compiler supports C++11, compiling in that mode.
Downloading Clang 3.5
CMake Error at ycm/CMakeLists.txt:62 (message):
No pre-built Clang 3.6 binaries for 32 bit linux. You'll have to compile
Clang 3.6 from source. See the YCM docs for details on how to use a
user-compiled libclang.
处理办法:改用 ./install.sh --clang-completer --system-libclang
编译CoreCLR需要Clang 3.5,而CentOS上安装的是Cl~ang 3.4.2
(yum repos中最新版也是这个),只能自己手工编译LLVM的代码进行安装。(注:CentOS的版本是6.6)
一、安装libstdc++4.7
(注:如果是CentOS 7.0,不需要这步)
wget http://people.centos.org/tru/devtools-2/devtools-2.repo -O /etc/yum.repos.d/devtools-2.repoyum install devtoolset-2-gcc devtoolset-2-binutils devtoolset-2-gcc-c++ln -s /opt/rh/devtoolset-2/root/usr/bin/* /usr/local/bin/
如果不安装,在configure配置编译选项时会出现下面的错误提示:
We detected a missing feature in the standard C++ library that was known to bemissing in libstdc++4.6 and implemented in libstdc++4.7. There are numerousC++11 problems with 4.6's library, and we don't support GCCs or libstdc++ olderthan 4.7.
二、安装Python 2.7.9
查看Python:yum search python | grep -i devel
(注:如果是CentOS 7.0,不需要这步)
CentOS 6.6自带的是Python 2.6.6,而编译llvm需要Python 2.7以上。
1)安装编译Python需要的包包
yum install zlib-develyum install bzip2-develyum install openssl-develyum install ncurses-develyum install sqlite-devel
2)下载并解压Python 2.7.9的源代码
cd /optwget --no-check-certificate https://www.python.org/ftp/python/2.7.9/Python-2.7.9.tar.xztar xf Python-2.7.9.tar.xzcd Python-2.7.9
3)编译与安装Python 2.7.9
./configure --prefix=/usr/localmake && make altinstall
4)将python命令指向Python 2.7.9
ln -s /usr/local/bin/python2.7 /usr/local/bin/python
三、添加交换分区
如果编译的机器内存比较小,建议添加交换分区。我当时测试的机器只有1G内存,在编译过程中出现了“c++: internal compiler error: Killed (program cc1plus)”错误。
1)创建并激活交换文件(比如2G):
dd if=/dev/zero of=/swapfile bs=1k count=2048000mkswap /swapfileswapon /swapfile
2)修改 /etc/fstab 文件让交换文件启动时自动加载,添加如下内容:
/swapfile swap swap defaults 0 0
四、编译LLVM
1)下载llvm的源代码
http://llvm.org/releases/3.5.0/llvm-3.5.0.src.tar.xzmv llvm-3.5.0.src llvm
2)下载clang的源代码
cd llvm/toolswget http://llvm.org/releases/3.5.0/cfe-3.5.0.src.tar.xztar xf cfe-3.5.0.src.tar.xzmv cfe-3.5.0.src clang
3)下载compiler-rt的源代码
cd ../projectswget http://llvm.org/releases/3.5.0/compiler-rt-3.5.0.src.tar.xztar xf compiler-rt-3.5.0.src.tar.xzmv compiler-rt-3.5.0.src compiler-rt
4)配置编译选项
cd .../configure --enable-optimized CC=gcc CXX=g++
5)编译llvm
make -j2
编译成功后的提示:
llvm[0]: ***** Completed Release+Asserts Build
6)安装编译好的llvm
make install
会安装在/usr/local/bing中
7)检查clang的版本
# clang --versionclang version 3.5.0 (tags/RELEASE_350/final)
如果还是旧版本,需要将/usr/bin/clang指向clang 3.5.0:
ls -s /usr/local/bin/clang /usr/bin/clang
0 0
- 在Linux CentOS上编译并安装Clang 3.5.0
- 在Linux CentOS上编译并安装Clang 3.5.0,适用于Redhat和Clang3.8
- 在CentOS 6.6 64bit上编译安装LLVM3.7,Clang,Libc++和libc++abi
- CentOS 6.5 安装Clang 3.5.0
- CentOS 5.8编译安装LLVM+Clang
- CentOs 6.5 编译安装Clang++ 3.4.2
- clang 3.9.1 centos 7 编译安装
- 在centos上安装smb并使用
- 在虚拟机上安装centos并配置
- 在CentOS 5.6上编译安装Memcached
- 在Centos上编译安装Erlang R15B
- 在centos上编译和安装vlc
- 在CentOS上编译安装FFmpeg
- 在CentOS上编译安装FFmpeg
- 在CentOS上编译安装PostgreSQL
- 在 ubuntu14.04 上安装 clang 3.6
- 【Linux】-在Linux Centos上安装Couchbase
- CentOS 6 编译安装LLVM3.3,Clang和Libc++
- 兔子--sqlite
- CreateDialogParam函数的应用
- 【GPS】IGS数据下载
- oracle读bfile,在fileopen时候ORA-22285报不存在
- 关于mysql数据表myisam与innode两种类型的比较分析
- 在Linux CentOS上编译并安装Clang 3.5.0
- 可继续深究的小问题
- Android中WebView的使用总结及Java与Javascript的相互调用
- Java学习之Iterator(迭代器)的一般用法 (转)
- 经典语录
- cocos2d-x 3.5版本mac平台下创建项目
- 正则表达式验证数字
- g++ 使用C++编译命令
- 利用oracle数据库闪回功能将oracle数据库按时间点恢复