【前言】因为工作需要编译apach-arrow,里面依赖到llvm7.0以上。但是开发环境是一个互联网的孤岛,需要手动编译llvm,具体操作如下
【下载相关源码和模块】
可以在http://releases.llvm.org/download.html#7.0.1 找到需要的版本,我编译的是7.1.0
解压LLVM/Clang等全部源代码(不包括test-suite)。
首先解压llvm主程序源代码:
tar xf llvm-7.1.0.src.tar.xz
然后进入llvm主目录:
cd llvm-7.1.0.src
创建几个子目录用于存放LLVM子项目的源代码:
mkdir -p tools/clang
mkdir -p tools/clang/tools/extra
mkdir -p tools/lld
mkdir -p tools/lldb
mkdir -p tools/polly
mkdir -p projects/compiler-rt
mkdir -p projects/libcxx
mkdir -p projects/libcxxabi
mkdir -p projects/libunwind
mkdir -p projects/openmp
开始解压所有的子项目:
tar xf ../cfe-