现在的位置: 首页 > 综合 > 正文

从代码开始编译clang/llvm

2017年10月07日 ⁄ 综合 ⁄ 共 1016字 ⁄ 字号 评论关闭

译至:http://d.hatena.ne.jp/embedded/20140827/p1

LLVM3.5可能很快就要release了,但是不想等了直接从源代码开始试着编译一下clang/llvm。

编译的方法如下所示:
Getting Started with the LLVM System — LLVM 3.6 documentation

虽然社区的代码库用的是svn,但是也准备了git的镜像,所以从镜像那边下载源代码。

$ WORKDIR=$HOME/work
$ mkdir $WORKDIR
$ cd $WORKDIR
$ git clone http://llvm.org/git/llvm.git
$ cd llvm
$ (cd tools/; git clone http://llvm.org/git/clang.git)
$ (cd projects/; git clone http://llvm.org/git/compiler-rt.git)

checkout 出 release_35 的分支。

$ git checkout -b work origin/release_35
$ (cd tools/clang; git checkout -b work origin/release_35)
$ (cd projects/compiler-rt/; git checkout -b work origin/release_35)

编译在别的目录执行。

$ cd $WORKDIR
$ mkdir obj
$ cd obj
$ ../llvm/configure 

因为编译比较花时间,追加 nohup 命令的话,中途就算是注销的也没问题。

$ nohup make ENABLE_OPTIMIZED=1 DISABLE_ASSERTIONS=1 -j4 &

安装

$ sudo make ENABLE_OPTIMIZED=1 DISABLE_ASSERTIONS=1 install
$ which clang
/usr/local/bin/clang
$ clang --version
clang version 3.5.0 (http://llvm.org/git/clang.git 3d96c02ac11c62ff959aed67163bef2c79012a83) (http://llvm.org/git/llvm.git a3313efbbeab739eacbba6faf4e941129576dbd2)
Target: x86_64-unknown-linux-gnu
Thread model: posix

抱歉!评论已关闭.