天天看點

Ubuntu安裝gcc-7.3.0[通俗易懂]

大家好,又見面了,我是你們的朋友全棧君。

  1. 下載下傳 gcc-7.3.0.tar.gz from
https://mirrors.tuna.tsinghua.edu.cn/gnu/gcc/gcc-7.3.0/gcc-7.3.0.tar.gz.           

複制

有一些依賴提前安裝:

sudo apt install libgmp-dev
sudo apt install libmpfr-dev
sudo apt install libmpc-dev
sudo apt install libisl-dev
sudo apt install zlib1g-dev
sudo apt-get install texinfo           

複制

(建議重新開機)

主要依賴庫包如下(僅限于gcc-7.3.0版本):

wget http://gcc.gnu.org/pub/gcc/infrastructure/gmp-6.1.0.tar.bz2
wget http://gcc.gnu.org/pub/gcc/infrastructure/mpfr-3.1.4.tar.bz2
wget http://gcc.gnu.org/pub/gcc/infrastructure/mpc-1.0.3.tar.gz
wget http://gcc.gnu.org/pub/gcc/infrastructure/isl-0.16.1.tar.bz2           

複制

把下載下傳好的檔案放到gcc檔案夾下~

然後運作:

./contrib/download_prerequisites           

複制

  1. 解壓編譯依賴

    2.1 解壓編譯依賴gmp-6.1.0.tar.bz2

tar jxvf gmp-6.1.0.tar.bz2
cd gmp-6.1.0
./configure --prefix=/usr/local/gmp
make && make install           

複制

2.2 解壓編譯依賴mpfr-3.1.4.tar.bz2

tar jxvf mpfr-3.1.4.tar.bz2
cd mpfr-3.1.4
./configure --prefix=/usr/local/mpfr --with-gmp=/usr/local/gmp
make && make install           

複制

2.3 解壓編譯依賴mpc-1.0.3.tar.gz

tar zxvf mpc-1.0.3.tar.gz
cd mpc-1.0.3
./configure --prefix=/usr/local/mpc  --with-gmp=/usr/local/gmp --with-mpfr=/usr/local/mpfr
make && make install           

複制

2.4 解壓編譯依賴isl-0.16.1.tar.bz2

tar jxvf isl-0.16.1.tar.bz2
cd isl-0.16.1
./configure --prefix=/usr/local/isl
make && make install           

複制

2.5 添加依賴的環境變量

vi ~/.bashrc
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/mpc/lib:/usr/local/gmp/lib:/usr/local/mpfr/lib/:/usr/local/isl/lib
source ~/.bashrc           

複制

把四項依賴的lib目錄加入到/etc/ld.so.conf中

sudo ldconfig           

複制

需要重新開機系統,讓環境變量生效!!!

3. 編譯gcc

cd gcc-7.3.0
./configure --prefix=/usr/local/gcc-7.3.0 --enable-languages=c,c++ --disable-multilib --with-system-zlib --disable-multilib --with-gmp=/usr/local/gmp --with-mpfr=/usr/local/mpfr --with-mpc=/usr/local/mpc --with-isl=/usr/local/isl
sudo make && make install           

複制

  1. 設定環境變量
在~/.bashrc檔案中加入
export LD_LIBRARY_PATH=.../xxx/xxx/xxx/lib64
ln -s /usr/local/gcc/bin/gcc /usr/bin/gcc           

複制

釋出者:全棧程式員棧長,轉載請注明出處:https://javaforall.cn/163829.html原文連結:https://javaforall.cn