目录
概述
搭建Llvm源码编译环境,可以帮助我们后续学习Llvm源码和通过llvm库编译出的可执行文件来使用Llvm库。下面来带大家了解下Llvm源码环境的搭建方式。
搭建CMake环境
cmake的官网,https://cmake.org/download/
下载的CMake版本必须大于 Version 3.4.3。(注如果系统中已经有CMake了通过 cmake -version 查看一下版本号 大于就不用下载了)
安装步骤执行如下操作:
- 解压 tar xzvf cmake-3.8.0-rc1.tar.gz;进入到解压目录 依次执行 ./bootstrap
- make
- make install
搭建SVN环境
如果系统中存在SVN,则忽略此步骤。
安装步骤执行如下操作:
-
sudo apt-get install subversion
搭建Llvm环境
为了演示,我把llvm安装在临时目录下(/tmp)
一、下载Llvm源码
安装步骤执行如下操作:
1. cd /tmp/llvm_install_demo
2. svn co http://llvm.org/svn/llvm-project/llvm/trunk llvm
此步骤时间较慢
二、下载Clang项目
- cd /tmp/llvm_install_demo
- cd llvm/tools
- svn co http://llvm.org/svn/llvm-project/cfe/trunk clang
三、下载 Compiler-RT
- cd /tmp/llvm_install_demo
- cd llvm/projects
- svn co http://llvm.org/svn/llvm-project/compiler-rt/trunk compiler-rt
四、下载测试部分代码(可选 并且比较大)
- cd /tmp/llvm_install_demo
- cd llvm/projects
- svn co http://llvm.org/svn/llvm-project/test-suite/trunk test-suite
五、离线下载相关包(可选)
如果不是下载llvm主线的代码,并且是commiter的情况下,可以下载离线包,因为上述下载操作很慢,并且我们想使用的是已经修改了BUG,并且发布的版本。
下载地址如下:
https://releases.llvm.org
根据上述网址,可以下载想用的LLVM版本,LLVM3.3之前的版本与LLVM3.3之后的版本差异较大,根据自己的情况下载对应的版本。
六、创建build文件夹编译llvm源码
- cd /tmp/llvm_install_demo
- mkdir build
- cd build
- cmake -DCMAKE_INSTALL_PREFIX=/tmp/llvm_install_demo/pkg -DLLVM_ENABLE_ASSERTIONS=ON -DCMAKE_BUILD_TYPE=Debug ../
[1] DCMAKE_INSTALL_PREFIX 安装目录
[2] DLLVM_ENABLE_ASSERTIONS 是否编译Assert版本, 如果是Assert版本,在llvm库中assert断言会生效。
[3] DCMAKE_BUILD_TYPE 编译源码的类型,Release版本,Debug版本
七、编译源码
1. make -j4
2. make install
八、查看是否安装成功
1. 查看是否安装成功
<1> cd /tmp/llvm_install_demo/pkg
2. 进入到bin目录下
<1> cd /tmp/llvm_install_demo/pkg/bin
可以看到相应的可执行文件都产生了
3. 查看clang的版本
<1> cd /tmp/llvm_install_demo/pkg/bin
<2> ./clang --version
经过上述步骤LLVM源码环境算是搭建完毕了。下面我们可以使用llvm。
总结
工欲善其事必先利其器,通过上述步骤我们已经搭建出了一个Llvm源码环境,下面开启我们学习Llvm之路吧。

微信公众号名称:技术茶馆
微信公众号ID : Night_ZW