很早之前的草稿,当时研究 KLEE 的需要。
0. 安装依赖:
cmake -DCMAKE_BUILD_TYPE=Release ../llvm-3.8.0.src/
1. 在本例中,我们的根目录是 ~/llvm 内
$ mkdir ~/llvm && cd ~/llvm
2. 下载源码包:
$ wget -c http://llvm.org/releases/3.8.0/llvm-3.8.0.src.tar.xz $ wget -c http://llvm.org/releases/3.8.0/cfe-3.8.0.src.tar.xz
3. 下载后,应该有两个压缩包文件:llvm-3.8.0.src.tar.xzcfe-3.8.0.src.tar.xz
使用 tar 命令解压这两个压缩包:
$ tar -xvf llvm-3.8.0.src.tar.xz $ tar xvf cfe-3.8.0.src.tar.xz
得到两个目录:cfe-3.8.0.srcllvm-3.8.0.src
4. 将 cfe 文件重命名为 clang 后放入 llvm 目录的 tools 内:
$ mv cfe-3.8.0.src clang && mv clang/ llvm-3.8.0.src/tools/
5. 编译项目:
$ cd ~/llvm && mkdir build && cd build $ cmake -DCMAKE_BUILD_TYPE=Release ../llvm-3.8.0.src/ $ make -j`nproc`
6. 把编译好的可执行文件加入 ~/.bashrc 文件内的 PATH 中:
$ echo "$PATH=$HOME/llvm/build/:$PATH" >> ~/.bashrc