LLVM简介
LLVM是伊利诺伊大学的一个开源项目,LLVM提供了完整的C/C++工具链,Clang属于其中的一个子项目,是 LLVM 原生的 " C/C++/Objective-C"编译器前端,Clang负责完成词法和语法分析,而代码优化和机器代码的生成工作由LLVM后端完成。vim中的插件YouCompleteMe就是利用Clang完成语法分析并给出精确的自动补全和语法错误提示(即静态分析)。
安装
简单来说,Clang 和 CompileRT 这两个子项目为 LLVM 提供了 C, C++, Objective C 和 Objective C++ 的前端及动态库支持,使得我们可以使用 Clang 来编译和构建项目。而要构建Clang,必须先构建LLVM核心库。
可从远程库http://llvm.org/svn/llvm-project/llvm/tags/中找到
比如我使用http://llvm.org/svn/llvm-project/llvm/tags/RELEASE_500/final/
安装必要的包
sudo apt-get install subversion
sudo apt-get install cmake
建立目录,统一存放
cd ~/download/
sudo mkdir llvm-install
cd llvm-install
- llvm core放在llvm-install目录下
- clang 放在 llvm目录下的tools目录下
- compileRT放在llvm目录下的projects目录下
组织结构如下:
llvm/
/tools/clang
/projects/compiler-rt
下载 llvm core库
svn co http://llvm.org/svn/llvm-project/llvm/tags/RELEASE_500/final llvm
下载clang:
cd llvm/tools
svn co http:/