在CentOS上编译安装llvm-3.8.1详细教程

2020/1/11  18:12

1682次

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

安装需求:

[list]

[*]Cmake: 3.4.3

[*]Python: 2.7.9

[*]GCC 4.8.2

[/list]

一、安装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个小时

详细编译参数请参考:[url]http://llvm.org/docs/CMake.html[/url]

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内存也可以成功编译,没有再测试。

点赞

centos llvm安装_在CentOS上编译安装llvm-3.8.1详细教程相关推荐

  1. 树莓派指定python2编译_在树莓派上编译安装ROS2

    最新编译方式已经修改,请参考官网最新文档: ------------------------------------下文已经过时 仅供参考------------------------------- ...

  2. 编译安装_在Centos7下编译安装新版本内核

    在工作中,很多时候由于需要使用新的技术方案,需要较新版本的内核来支持新的功能,而CentOS系统自带的内核版本普遍都比较旧,因此我们需要对系统的内核进行升级,安装新版的内核.在此,以CentOS 7系 ...

  3. centos 安装java_在CentOS8上编译安装开源EDA工具——Surelog

    介绍 Surelog是一个支持SystemVerilog 2017的Pre-processor.Parser.UHDM Compiler,可用于语法检查.仿真.综合.形式验证工具的前端. 官网安装说明 ...

  4. mysql5.7源码安装 简书_在CentOS7上编译安装MySQL 5.7.13步骤详解

    MySQL 5.7主要特性 更好的性能 对于多核CPU.固态硬盘.锁有着更好的优化,每秒100W QPS已不再是MySQL的追求,下个版本能否上200W QPS才是用户更关心的. 更好的InnoDB存 ...

  5. mysql8.0.12最小化安装_简述MySql8.0编译安装过程

    [[email protected] ~]# cat /etc/redhat-release CentOS Linux release 8.0.1905 (Core) 注意:不要用8以下的系统编译My ...

  6. CentOS 7上编译安装PHP 8.1及Nginx 配置支持PHP

    CentOS 7上编译安装PHP 8.1/及Nginx 配置支持PHP 编译安装 Php[端口:9000] 安装编译环境依赖包 yum -y install gcc gcc-c++ glibc aut ...

  7. 在 CentOS 8 上编译安装 ISC-DHCP-Server

    这篇文章是又一位专业水平非常顶的朋友那里转的,有感兴趣的朋友可以去关注一下 https://www.ddupan.top 在 CentOS 8 上编译安装 ISC-DHCP-Server 应要求,我需 ...

  8. 在PK体系下的CentOS上编译安装 MySQL 5.7

    本文主要介绍如何在 PK 体系下的 CentOS 上编译安装 MySQL 5.7,本文使用的操作系统环境为: CentOS 版本: # cat /etc/redhat-release CentOS L ...

  9. Fedora12上编译安装gdb-7.2

    在Fedora12上编译安装gdb-7.2:编译安装gdb和gdbserver 1. 下载gdb7.2:  ftp://sourceware.org/pub/gdb/releases/gdb-7.2a ...

最新文章

  1. 产品经理岗位职责说明_技术负责人岗位职责,五大方面,超越岗位抓住未来才是技术大牛...
  2. SAP QA32 做使用决策系统报错:分类数据的不一致性=交易终止
  3. 龙岗网络推广为SEO优化人员介绍如何合理处理垃圾外链?
  4. 鼠标拖动div移动js代码
  5. 电源pd功能的充电器_PD快充充电器电源芯片和普通充电器电源芯片有什么区别?...
  6. C++一天一个程序(一)
  7. 命运(HDU-2571)
  8. 超好看的自适应蜘蛛池官网首页源码
  9. vm和openstack_最佳新OpenStack技巧和窍门
  10. DDos防御工具DDoS-Defender-v2.1.0
  11. 阅读笔记-游戏开发中的人工智能-第6章-基本路径寻找及航点应用
  12. golang net/http访问https
  13. vue 浏览器地址是ip_Vue实战041:获取当前客户端IP地址详解(内网和外网)
  14. 因Win10商店引起的卡死问题与解决方法
  15. win10计算机性能设置,巧设置让Win10运行更流畅
  16. android aar的打包引用和解决间接引用异常
  17. 2014年5月份第1周51Aspx源码发布详情
  18. 【图像去模糊】SDWNet: A Straight Dilated Network with Wavelet Transformation for image Deblurring
  19. 天行健,君子以自强不息 ;地势坤,君子以厚德载物
  20. 量子力学科普书籍《见微知著》为什么值得读,看看目录就懂了

热门文章

  1. php pcntl扩展下载,linux下如何安装PHP pcntl 扩展
  2. java map类型转换_Java string类型转换成map代码实例
  3. IDEA 运行run 为灰色解决办法
  4. python中的类和对象
  5. Python re 模块findall() 函数返回值展现方式详解
  6. 用Python找出数组中出现次数超过一半的数
  7. 小型服务器的操作系统,小型机服务器的操作系统
  8. SourceInsight 汉化
  9. python 程序开发以及推荐机制设计
  10. pygame的学习以及python的巩固(窗口尺寸的显示)