Linux下clang、gcc、intel編譯器最新版本安裝筆記


系統平台:Red-Hat-Enterprise-Linux-Server-6.0-X86_64

1、clang-3.2安裝筆記

(1)下載clang、llvm、compiler-rt源代碼

    LLVM-3.2源代碼下載: LLVM source code(12M)

    clang-3.2源代碼下載:Clang source code(8.4M)

    compiler-rt源代碼下載:Compiler RT source code(1.4M)

clang-3.2.src.tar.gz
compiler-rt-3.2.src.tar.gz llvm-3.2.src.tar.gz

 (2)解壓下載的源代碼壓縮包

tar -zxf llvm-3.2.src.tar.gzs  # 解壓后文件夾名為llvm-3.2.src,將其重命名為llvm-3.2
tar -zxf clang-3.2.src.tar.gz  # 解壓后文件夾名為clang-3.2.src,將其重命名為clang並將其移動到llvm-3.2/tools目錄之下
tar -zxf compiler-rt-3.2.src.tar.gz # 解壓后文件夾名為compiler-rt-3.2.src,將其重命名為compiler-rt-3.2並將其移動到llvm-3.2/projects目錄之下

    然后在於llvm-3.2所在目錄新建一個build目錄,這樣最終得到的目錄結構關系如下所示:

├── build
└── llvm-3.2
    ├── projects
    │   └── compiler-rt
    └── tools
        └── clang

    【說明】:我們將在build目錄中進行構建llvm、clang和compiler-rt,之所以這樣是為了讓源代碼保持干凈,生成的目標文件都在這里。另外將clang和compiler-rt目錄分別放入llvm-3.2相應的子目錄下是為了在構建llvm的同時,自動構建clang和compiler-rt。

(3)構建llvm、clang和compiler-rt

cd build
../llvm-3.2/configure
make

(4)設置環境變量

    上述第(3)步成功后,clang已經成功編譯到了build/Release+Asserts/bin目錄之中,至此只需將clang所在目錄添加到PATH環境變量中,clang就可以使用了。

    【說明】:前些日子也記錄過一篇關於編譯clang的文章(http://www.cnblogs.com/soaliap/archive/2012/07/23/2605278.html),當時是從主干直接下載代碼的,編譯的為Debug版本,很浪費硬盤空間(超過7G),這里下載並編譯的為Release版本,就小的多了(不到1G)。

2、gcc-4.7.2安裝筆記

(1)、gcc-4.7.2源碼下載

    打開http://www.gnu.org/software/gcc/gcc-4.7/頁面,左下角可以看到下載鏡像站點和SVN服務器地址,本人是從FTP鏡像站點下的,並且是.tar.bz2格式(這個格式壓縮比較好,壓縮文件較小)。

(2)、解壓壓縮包

    tar -jxf gcc-4.7.2.tar.bz2

(3)、初次嘗試

    解壓后文件夾為gcc-4.7.2,同上面構建clang一樣,新建與gcc-4.7.2同級的目錄build,並進入其中執行:

    ../gcc-4.7.2/configure --prefix=/opt/gcc/4.7.2

    不幸的是報錯了,錯誤信息如下:

......
checking for the correct version of gmp.h... no
configure: error: Building GCC requires GMP 4.2+, MPFR 2.3.1+ and MPC 0.8.0+.
Try the --with-gmp, --with-mpfr and/or --with-mpc options to specify
their locations.  Source code for these libraries can be found at
their respective hosting sites as well as at
ftp://gcc.gnu.org/pub/gcc/infrastructure/.  See also
http://gcc.gnu.org/install/prerequisites.html for additional info.  If
you obtained GMP, MPFR and/or MPC from a vendor distribution package,
make sure that you have installed both the libraries and the header
files.  They may be located in separate packages.

     從錯誤信息中可以看出,需要安裝gmp、mpfr和mpc,如果已經安裝了,並且安裝在了非系統默認能夠查找到的位置,則需要通過--with-gmp、--with-mpfr、--with-mpc三個選項指定安裝位置。

(4)、安裝gmp、mpfr和mpc

    gmp可以從http://gmplib.org/下載,解壓后執行:

./configure --prefix=/usr/local/gmp-5.1.0
make
make install

    mpfr可以從http://www.mpfr.org/下載,解壓后執行:

./configure --prefix=/usr/local/mpfr-3.1.1 --with-gmp=/usr/local/gmp-5.1.0
make
make install

    mpc可以從http://www.multiprecision.org/下載,解壓后執行:

./configure --prefix=/usr/local/mpc-1.0.1 --with-mpfr=/usr/local/mpfr-3.1.1 --with-gmp=/usr/local/gmp-5.1.0
make
make install

    設置環境變量:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/gmp-5.1.0/lib:/usr/local/mpfr-3.1.1/lib:/usr/local/mpc-1.0.1/lib

     【說明】:由於上述三個庫的依賴關系為:mpc依賴於mpfr和gmp,mpfr依賴於gmp,因此這三個庫的安裝先后順序必須為:gmp、mpfr、mpc。另外,值得一提的是本人一開始想偷懶,不指定gmp、mpfr、mpc的安裝目錄,讓它們安裝到默認的路徑,這樣就可以不設置環境變量,也不需使用--with-gmp、--withmpfr、--with-mpc三個選項了,可沒想到重新make的時候(編譯gcc的時候)會報錯:“configure: error: cannot compute suffix of object files: cannot compile”,於是只好老老實實按照上述步驟再做一遍。

(5)、重新構建

../gcc-4.7.2/configure --prefix=/opt/gcc/4.7.2 --with-mpc=/usr/local/mpc-1.0.1 --with-mpfr=/usr/local/mpfr-3.1.1 --with-gmp=/usr/local/gmp-5.1.0
make

    make的時候還有錯誤:“/usr/include/gnu/stubs.h:7:27: fatal error: gnu/stubs-32.h: No such file or directory”,解決方法是在執行configure時加上--disable-multilib選項。

 (6)、再次重新構建

../gcc-4.7.2/configure --prefix=/opt/gcc/4.7.2 --with-mpc=/usr/local/mpc-1.0.1 --with-mpfr=/usr/local/mpfr-3.1.1 --with-gmp=/usr/local/gmp-5.1.0 --disable-multilib
make
make install

 (7)、設置環境變量

export PATH=/opt/gcc/4.7.2/bin:$PATH
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/gcc/4.7.2/lib64:/usr/local/gmp-5.1.0/lib:/usr/local/mpfr-3.1.1/lib:/usr/local/mpc-1.0.1/lib

    至此,g++-4.7.2已經可以正常使用了。

    【說明】:若是安裝過程還有別的問題,可以瞅瞅這篇文章,http://blog.csdn.net/gengshenghong/article/details/7498085,看能否找到答案。

 3、Intel C++編譯器安裝筆記

(1)、申請評估版本

    intel編譯器並不開放源代碼,但是提供一個30天免費使用的評估版本,需要到intel官方網站申請(http://software.intel.com/en-us/intel-software-evaluation-center)填寫申請信息提交后,會收到intel發給你的一封郵件,其中有下載的鏈接。

    說明】:默認下載的版本能夠安裝在32位系統或64位系統之中,但是下載的壓縮包比較大(1.5G),如果你只想要安裝在64位系統上,那么下載intel64版本的即可(僅有968M),另外也有32位版本。

(2)、安裝

    下載完成后,解壓,里面有個shell腳本(install.sh),運行它即可。安裝過程更裝windows程序沒什么兩樣,只不過是命令行形式的,需要你手動敲accept和安裝選項而已。

(3)、設置環境變量

    intel提供了shell腳本來幫助你簡化環境變量設置,只需執行:

source /opt/intel/bin/compilervars.sh intel64     # /opt/intel為安裝目錄

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM