1. gcc源碼下載
ftp://gcc.gnu.org/pub/gcc/releases/
[yhwang@yhwang ~] wget ftp://gcc.gnu.org/pub/gcc/releases/gcc-8.2.0/gcc-8.2.0.tar.gz [yhwang@yhwang ~] tar zxvf gcc-8.2.0.tar.gz
下載你所需要的GCC版本。
2. 下載gcc依賴庫源碼
gmp ftp://gcc.gnu.org/pub/gcc/infrastructure/gmp-6.1.0.tar.bz2
mpc ftp://gcc.gnu.org/pub/gcc/infrastructure/mpc-1.0.3.tar.gz
mpfr ftp://gcc.gnu.org/pub/gcc/infrastructure/mpfr-3.1.4.tar.bz2
[yhwang@yhwang ~] wget ftp://gcc.gnu.org/pub/gcc/infrastructure/gmp-6.1.0.tar.bz2 ftp://gcc.gnu.org/pub/gcc/infrastructure/mpc-1.0.3.tar.gz ftp://gcc.gnu.org/pub/gcc/infrastructure/mpfr-3.1.4.tar.bz2 [yhwang@yhwang ~] tar jxvf gmp-6.1.0.tar.bz2 [yhwang@yhwang ~] tar zxvf mpc-1.0.3.tar.gz [yhwang@yhwang ~] tar jxvf mpfr-3.1.4.tar.bz2 [yhwang@yhwang ~] cd ~/gmp-6.1.0 [yhwang@yhwang ~] ./configure --prefix=/usr/local/gmp [yhwang@yhwang ~] make && make install [yhwang@yhwang ~] cd ~/mpc-1.0.3 [yhwang@yhwang ~] ./configure --prefix=/usr/local/mpc [yhwang@yhwang ~] make && make install [yhwang@yhwang ~] cd ~/mpfr-3.1.4 [yhwang@yhwang ~] ./configure --prefix=/usr/local/mpfr [yhwang@yhwang ~] make && make install [yhwang@yhwang ~] export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/mpc/lib:/usr/local/gmp/lib:/usr/local/mpfr/lib/ [yhwang@yhwang ~] cd ~/gcc-8.2.0 [yhwang@yhwang ~] ./configure --prefix=/usr/local/gcc --with-gmp=/usr/local/gmp/ --with-mpfr=/usr/local/mpfr/ --with-mpc=/usr/local/mpc/ --with-system-zlib --disable-multilib [yhwang@yhwang ~] make && make install
3. 注意點
make時遇到:
checking for suffix of object files... configure: error: in `/home/yhwang/gcc-8.2/gcc-8.2.0/x86_64-linux-gnu/libgcc':
configure: error: cannot compute suffix of object files: cannot compile
See `config.log' for more details.
make[2]: *** [configure-stage1-target-libgcc] 錯誤 1
make[2]:正在離開目錄 `/home/yhwang/gcc-8.2/gcc-8.2.0'
make[1]: *** [stage1-bubble] 錯誤 2
make[1]:正在離開目錄 `/home/yhwang/gcc-8.2/gcc-8.2.0'
make: *** [all] 錯誤 2
然后就停下了,在編譯之前需要輸入如下語句
[yhwang@yhwang ~] export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/mpc/lib:/usr/local/gmp/lib:/usr/local/mpfr/lib/
然后
[yhwang@yhwang ~] make && make install
4. 檢查gcc版本
[yhwang@yhwang ~] gcc -v [yhwang@yhwang ~] g++ -v