LLVM 與 Clang 介紹
LLVM 是 Low Level Virtual Machine 的簡稱,這個庫提供了與編譯器相關的支持,能夠進行程序語言的編譯期優化、鏈接優化、在線編譯優化、代碼生成。
Clang 是一個 C++ 編寫、基于 LLVM、發布于 LLVM BSD 許可證下的 C/C++/Objective C/Objective C++ 編譯器,其目標(之一)就是超越 GCC。
Clang 的特性
快 內存占用小 診斷信息可讀性強 GCC 兼容性 設計清晰簡單,容易理解,易于擴展增強 基于庫的模塊化設計
官方主頁 http://llvm.org/
LLVM 3.1 Release Notes http://llvm.org/releases/3.1/docs/ReleaseNotes.html
Clang 3.1 Release Notes http://llvm.org/releases/3.1/docs/ClangReleaseNotes.html
下載地址 http://llvm.org/releases/download.html
Experimental Clang Binaries for Mingw32/x86 (69M)下載地址
http://llvm.org/releases/3.1/clang+llvm-3.1-i386-mingw32-EXPERIMENTAL.tar.bz2
若感興趣的可以下載源代碼自己重新編譯,不過需要很長時間
./configure --prefix=/mingw --enable-optimized --disable-assertions
make
make install
測試寫個hello.c
#include "stdio.h"
int main(){
printf("Hello Clang!!");
return 0;}
clang -v hello.c