Mac安装LLVM

Mac安装llvm

网上安装LLVM的攻略,全都要同时安装一大堆其他软件,本攻略是单独安装LLVM的,不加带任何其他私货。

下载llvm源码包

LLVM官网
源码包地址
直接点击链接下载,新建一个名为llvm的文件夹,用tar解压到llvm文件夹,在llvm文件夹中新建一个名为build的文件夹,解压后目录结构如下

sszxr:llvm sszxr$ ls
build          llvm-9.0.0.src
sszxr:llvm sszxr$ 

进入build文件夹,使用cmake获得Makefile文件

命令cmake -G "Unix Makefiles" -DLLVM_ENABLE_ASSERTIONS=On -DCMAKE_BUILD_TYPE=Release ../llvm-9.0.0.src/

sszxr:build sszxr$ cmake -G "Unix Makefiles" -DLLVM_ENABLE_ASSERTIONS=On -DCMAKE_BUILD_TYPE=Release ../llvm-9.0.0.src/
-- The C compiler identification is AppleClang 10.0.0.10001044
-- The CXX compiler identification is AppleClang 10.0.0.10001044
-- The ASM compiler identification is AppleClang
-- Found assembler: /Library/Developer/CommandLineTools/usr/bin/cc
-- Check for working C compiler: /Library/Developer/CommandLineTools/usr/bin/cc
-- Check for working C compiler: /Library/Developer/CommandLineTools/usr/bin/cc -- works
-- Detecting C compiler ABI info
………………………………
………………………………
………………………………
-- Configuring done
-- Generating done
-- Build files have been written to: /Users/sszxr/llvm/build
sszxr:build sszxr$ 

编译

命令make -j 8-j n用来指定线程数,这里指定8个线程

sszxr:build sszxr$ make -j 8
Scanning dependencies of target LLVMDemangle
Scanning dependencies of target LLVMHello_exports
…………………………
Scanning dependencies of target LLVMSupport
[  0%] Creating export file for LLVMHello
[  0%] Generating VCSRevision.h
[  0%] Building CXX object lib/Demangle/CMakeFiles/LLVMDemangle.dir/Demangle.cpp.o
[  0%] Built target LLVMHello_exports
[  0%] Building CXX object lib/Bitstream/Reader/CMakeFiles/LLVMBitstreamReader.dir/BitstreamReader.cpp.o
Scanning dependencies of target LLVMMC
[  0%] Built target llvm_vcsrevision_h
Scanning dependencies of target LLVMMCParser
……………………………
……………………………
……………………………
……………………………
[100%] Built target llvm-lto2
[100%] Built target llvm-exegesis
[100%] Linking CXX executable ../../bin/llvm-opt-fuzzer
[100%] Linking CXX executable ../../bin/opt
[100%] Built target llvm-opt-fuzzer
[100%] Built target opt
sszxr:build sszxr$ 

安装

命令sudo make install

sszxr:build sszxr$ sudo make install
Password:
[  0%] Built target LLVMDemangle
[  4%] Built target LLVMSupport
[  4%] Built target LLVMTableGen
…………………………………
…………………………………
…………………………………
[100%] Built target benchmark_main
Install the project...
-- Install configuration: "Release"
-- Installing: /usr/local/include/llvm
………………………………
………………………………
………………………………
llvm/./FindZ3.cmake
-- Installing: /usr/local/lib/cmake/llvm/./CrossCompile.cmake
-- Installing: /usr/local/lib/cmake/llvm/./AddLLVMDefinitions.cmake
-- Installing: /usr/local/lib/cmake/llvm/./CheckAtomic.cmake
-- Installing: /usr/local/lib/cmake/llvm/./FindSphinx.cmake
-- Installing: /usr/local/lib/cmake/llvm/./TableGen.cmake
-- Installing: /usr/local/lib/cmake/llvm/./CheckLinkerFlag.cmake
sszxr:build sszxr$ 

安装位置

sszxr:build sszxr$ which llvm-config
/usr/local/bin/llvm-config
sszxr:build sszxr$ 

LLVM-CONFIG=/usr/local/bin/llvm-config

版本

sszxr:build sszxr$ llvm-config --version
9.0.0
sszxr:build sszxr$ 

参考文章

安装LLVM+Clang教程
LLVM安装编译
【LLVM】LLVM的安装与配置

发布了75 篇原创文章 · 获赞 33 · 访问量 8万+

猜你喜欢

转载自blog.csdn.net/Charliewolf/article/details/101284923