本文记录 LLVM 的安装过程,比较繁琐,使用 LLVM 3.4

操作系统:CentOS 6.6 64 位

1. 下载需要的软件


相关软件下载地址:http://llvm.org/releases/download.html#3.4

我们需要下载代码如下:

  • Clang source code
  • LLVM source code
  • Compiler RT source code

下载之后,分别解压各个压缩包,然后把 clang 放到 llvm 源码的 tools 目录中,并重命名为 clang,把 compiler-rt 放到 llvm 源码中的 projects 目录中,重命名为 compiler-rt:

tar -zxf clang-3.4.src.tar.gz
tar -zxf compiler-rt-3.4.src.tar.gz
tar -zxf llvm-3.4.src.tar.gz
mv clang-3.4 llvm-3.4/tools/clang
mv compiler-rt-3.4 llvm-3.4/projects/compiler-rt

2. 解决软件依赖


LLVM 3.4 所依赖的各个软件及其版本号如下:

Package Version Notes Download Links
GNU Make 3.79, 3.79.1 Makefile/build processor http://savannah.gnu.org/projects/make
GCC 3.4.2 C/C++ compiler1 http://gcc.gnu.org/
TeXinfo 4.5 For building the CFE http://www.gnu.org/software/texinfo/
python >=2.5 Automated test suite3 http://www.python.org/
GNU M4 1.4 Macro processor for configuration4 http://savannah.gnu.org/projects/m4
GNU Autoconf 2.60 Configuration script builder4 http://www.gnu.org/software/autoconf/
GNU Automake 1.9.6 aclocal macro generator4 http://www.gnu.org/software/automake/
libtool 1.5.22 Shared library manager4 http://savannah.gnu.org/projects/libtool
zlib >=1.2.3.4 Compression library5 http://zlib.net/

一般来讲,gcc、make 和 Python 不用再安装了,其他的软件直接从下载链接下载下来,使用 make 三部曲安装即可:

./configure
make -j24
sudo make install

3. 编译安装 LLVM


另建两个文件夹:llvm-build 和 llvm-install,分别用来进行 LLVM 编译和安装目录,我们编译带 assert 和 debug 信息的 llvm,所有的命令如下:

mkdir llvm-build
mkdir llvm-install
cd llvm-build/
../llvm-3.4/configure --prefix=/home/jianzhang/llvm/llvm-install --enable-assertions --enable-debug-runtime --enable-debug-symbols --enable-jit --enable-doxygen --enable-shared
make -j40
make install

编译安装 LLVM的更多相关文章

  1. Linux c++ vim环境搭建系列(2)——Ubuntu18.04.4编译安装llvm clang

    2. 源码编译安装llvm clang 参考网址: https://llvhttps

  2. Centos 7 编译安装llvm 8.0.0

    参考连接:https://www.cnblogs.com/BinBinStory/p/7499527.html https://blog.csdn.net/llwy1428/article/detai ...

  3. 拾遗:YouCompleteMe 前传——编译安装 llvm + clang

    http://llvm.org/docs/GettingStarted.html 一.下载安装 cmake >=3.4.3 yum install gcc gcc-c++curl -O http ...

  4. llvm+clang编译安装

    最近一段时间在llvm+clang上做一些东西,所以顺便将自己如何编译安装llvm+clang写了篇文章发在这里,希望能帮助刚接触llvm+clang的童鞋少走一些弯路(我刚接触的时候为了编译安装这个 ...

  5. CentOS 7 编译安装clang+llvm

    天在CentOS上将最新版本的LLVM套件(LLVM,Clang和Libc++)编译安装好了,中间遇到了不少问题.虽然已经有很多博客介绍如何编译安装LLVM了,但是根据我自己亲身体验的情况来看,还是有 ...

  6. CentOS 6.4 编译安装LLVM3.3,Clang和Libc++

    LLVM的最新版本3.3终于在6月17日发布了,按之前的计划6月5日就应该发布了,不过毕竟没有太晚,赶在VS2013 preview(6月26日微软Build大会)之前出来了.加上之前gcc4.8.1 ...

  7. ubuntu下载源码clang + llvm+lldb 编译+安装

    [本文可能涉及到Ubuntu安装以下工具:] A.g++ B.gcc C.make D.cmake E.clang(10.0.1)(必须) F.llvm(10.0.1)(必须) G.lldb(10.0 ...

  8. Ubuntu通过源代码编译安装Octave 4.0

    本教程/笔记,意在指导在Ubuntu及其它Linux系统上怎样通过源代码安装Octave. Octave简单介绍 Octave是GNU旗下取代matlab的数学工具软件,语法与matlab高度兼容.而 ...

  9. 尝试在CentOS7.2上编译安装Swift

    苹果提供 Ubuntu上构建Swift 的教程,通过这个教程我尝试使用CentOS7.2上玩儿一把.目前已经成功在CentOS7.2上班成功安装 swift 4.0 https://github.co ...

随机推荐

  1. GCD中的dispatch_sync、dispatch_sync 分别与串行、并行队列组合执行小实验

    平常开发中会经常用gcd做一下多线程任务,但一直没有对同步.异步任务在串行.并行队列的执行情况做个全面的认识,今天写了个demo跑了下,还是有些新发现的. 代码如下: - (void)touchesB ...

  2. iOS系统app崩溃日志手动符号化

    iOS系统app崩溃日志手动符号化步骤: 1.在桌面建立一个crash文件夹,将symbolicatecrash工具..crash文件..dSYM文件放到该文件夹中 a.如何查询symbolicate ...

  3. 【UML】类图的几种关系总结

    在UML类图中,常见的有以下几种关系:泛化(Generalization),  实现(Realization),关联(Association),聚合(Aggregation),组合(Compositi ...

  4. js使用转义符技巧输出HTML

    有时候我们需要使用js输出html代码,会涉及一些标签.变量. 对于很长的html代码,为了让js具有较好的可读性,需要在js里对html代码进行一定的拆分.拼接. 简单明了版 通常我们这样做 var ...

  5. Struts2入门3 深入学习

    Struts2入门3 深入学习 处理结果和异常 前言: Struts学习的差不多了,还有最后的一点就收官了就是结果处理和异常处理.前面学习Struts主要围绕就是Action以及struts.xml配 ...

  6. 基本语法 protocols Category extension

    转:http://blog.csdn.net/wangeen/article/details/16989529 protocol   本质就是一系列的method的声明,他并不像class是必须的选项 ...

  7. RTL8710 ROM 符号表 函数,常量,变量

    函数 Name Address Ordinal ---- ------- ------- __vectors_table Reset_Handler NMI_Handler HardFault_Han ...

  8. Multiplexing SDIO Devices Using MAX II or CoolRunner-II CPLD

    XAPP906 Supporting Multiple SD Devices with CoolRunner-II CPLDs There has been an increasing demand ...

  9. HOWTO: InstallScript MSI工程取Log

    InstallShield的各种类型安装包如果遇到安装问题(尤其是在客户安装时遇到问题),获取Log分析是最有效的方法之一. 对于封装一个Setup.exe的InstallScript MSI工程,我 ...

  10. Android音频介绍

    这个世界音频设备千变万化,Android也不可能为每种设备都提供支持.Android定义了一个框架,这个框架来适配底层的音频设备.该适配层的定义位于: hardware/libhardware_leg ...