【LLVM】Llvm 源码编译安装

目录

概述

搭建CMake环境

搭建SVN环境

搭建Llvm环境

一、下载Llvm源码

二、下载Clang项目

三、下载 Compiler-RT

四、下载测试部分代码(可选 并且比较大)

五、离线下载相关包(可选)

六、创建build文件夹编译llvm源码

七、编译源码

八、查看是否安装成功

总结


概述

 

搭建Llvm源码编译环境,可以帮助我们后续学习Llvm源码和通过llvm库编译出的可执行文件来使用Llvm库。下面来带大家了解下Llvm源码环境的搭建方式。

 

搭建CMake环境

 

cmake的官网,https://cmake.org/download/

下载的CMake版本必须大于 Version 3.4.3。(注如果系统中已经有CMake了通过 cmake -version 查看一下版本号 大于就不用下载了)

安装步骤执行如下操作:

  1. 解压 tar xzvf cmake-3.8.0-rc1.tar.gz;进入到解压目录 依次执行 ./bootstrap
  2. make 
  3. make install

 

搭建SVN环境

 

如果系统中存在SVN,则忽略此步骤。

安装步骤执行如下操作:

  1. 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项目

  1. cd /tmp/llvm_install_demo
  2. cd llvm/tools 
  3. svn co http://llvm.org/svn/llvm-project/cfe/trunk clang

 

三、下载 Compiler-RT

  1. cd /tmp/llvm_install_demo 
  2. cd llvm/projects 
  3. svn co http://llvm.org/svn/llvm-project/compiler-rt/trunk compiler-rt

 

四、下载测试部分代码(可选 并且比较大)

  1. cd /tmp/llvm_install_demo 
  2. cd llvm/projects 
  3. 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源码

  1. cd /tmp/llvm_install_demo 
  2. mkdir build 
  3. cd build
  4. 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
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值