clang的下載地址
http://releases.llvm.org/download.html
下載好了以后,四個壓縮包都解壓出來,得到四個目錄:
llvm-3.3.src
cfe-3.3.src
clang-tools-extra-3.3.src
compiler-rt-3.3.src
libcxx-3.3.src
然后按下面的步驟組織:
1 mv cfe-3.3.src clang 2 3 4 mv clang/ llvm-3.3.src/tools/ 5 6 7 8 mv clang-tools-extra-3.3.src extra 9 10 11 mv extra/ llvm-3.3.src/tools/clang/ 12 13 14 15 mv compiler-rt-3.3.src compiler-rt 16 17 18 mv compiler-rt llvm-3.3.src/projects/
這樣以后clang,clang-tools-extra和compiler-rt就可以和llvm一起編譯了。
在llvm-3.3.src同一層目錄上新建個目錄build-3.3並進入:
Clang7.0.0版本需要采用cmake 進行編譯
llvm為了防止編譯的中間結果分布在碼源目錄中,影響碼源的結構。因此不支持目錄內編譯。需要在碼源目錄外創建額外的編譯目錄。
1 mkdir build7.0.0 2 cd build7.0.0 3 cmake -G "Unix Makefiles" ../llvm-7.0.0.src 4 make make install
執行cmake命令后的成功打印信息:
1 -- Builtin supported architectures: x86_64 2 -- Looking for sys/resource.h 3 -- Looking for sys/resource.h - found 4 -- Clang version: 7.0.0 5 -- Performing Test CXX_SUPPORTS_NO_NESTED_ANON_TYPES_FLAG 6 -- Performing Test CXX_SUPPORTS_NO_NESTED_ANON_TYPES_FLAG - Failed 7 -- Configuring done 8 -- Generating done 9 -- Build files have been written to: /home/sl/prog/install/build-7.0.0
make -j4 // 進行編譯,時間有點久
make install //
參考鏈接:
https://www.cnblogs.com/davytitan/p/3924402.html
https://blog.csdn.net/c_sdnq2451q/article/details/46999119