1.下載gcc-4.8.5:
$ wget ftp://ftp.gnu.org/gnu/gcc/gcc-4.8.5/gcc-4.8.5.tar.gz
2.解壓gcc:
$ tar zxvf gcc-4.8.5.tar.gz $ cd gcc-4.8.5
3.安裝依賴三大件,會自動順序安裝gmp、mpfr、mpc
$ ./contrib/download_prerequisites
4.創建編譯目錄:
$ cd .. $ mkdir gcc-4.8.5-build $ cd gcc-4.8.5-build
5.編譯並重置環境變量(不重置部分邊境變量的話會報不能包含當前路徑之類的錯):
$ ../gcc-4.8.5/configure --prefix=/usr/local/gcc --enable-languages=c,c++ --build=x86_64-linux --disable-multilib $ unset CPLUS_INCLUDE_PATH $ unset LIBRARY_PATH
6.安裝:
$ make -j8
$ make install
7.設置環境變量
#gcc export LD_LIBRARY_PATH=/home/username/Programs/usr/lib64:/home/username/Programs/usr/lib:$LD_LIBRARY_PATH export LIBRARY_PATH=/home/username/Programs/usr/lib64:/home/username/Programs/usr/lib:$LIBRARY_PATH export C_INCLUDE_PATH=/home/username/Programs/usr/include:$C_INCLUDE_PATH export CPLUS_INCLUDE_PATH=/home/username/Programs/usr/include:$CPLUS_INCLUDE_PATH export PATH=/home/username/Programs/usr/bin:$PATH
注意:
1.部分環境變量需要重置,根據個人情況又不盡相同,一般是 LIBRARY_PATH, LD_LIBRARY_PATH, CPLUS_INCLUDE_PATH 等,不然會報如下錯誤:
[error] LIBRARY_PATH shouldn't contain the current directory
到時候對錯誤信息提到的環境變量 unset 就可以。
2.編譯選項 --disable-multilib 問題:
如果不加此選項,make過程會出現莫名其妙的問題,大概是32 64位庫的問題。