linux操作系統編譯GCC5.3.0

源碼編譯需要的依賴

允許轉載,但是請備註一下我的源URL
我的linux操作系統是centos7.5 yum源自帶的gcc爲4.8版本。
通過國內好人們的鏡像站下載依賴,gmp,mpfr,mpc 這三個分別需要的系統版本是gmp-4.3.2,mpc-0.8.1,mpfr-2.4.2
以下爲鏡像站:

http://ftp.gnu.org/gnu/gcc/gcc-5.3.0/gcc-5.3.0.tar.gz ftp://gcc.gnu.org/pub/gcc/infrastructure/mpfr-2.4.2.tar.bz2 ftp://gcc.gnu.org/pub/gcc/infrastructure/mpc-0.8.1.tar.gz ftp://gcc.gnu.org/pub/gcc/infrastructure/gmp-4.3.2.tar.gz

首先需要解決依賴 依賴源碼編譯的順序是 ** gmp >> mpfr >> mpc >> gcc **
首先創建一個 /usr/local/gcc-5.3.0目錄 , 然後三個 分別創建/usr/local/* 目錄 編譯不支持在原路徑編譯 ** 編譯格式以我爲例: 我的是下載在/opt下 “/opt/“文件”/configure” make && make install **
四個都可以直接這樣編譯,它會默認選擇路徑 默認路徑就是/usr/local下
也可以指定
/opt/gmp-4.3.2/configure -prefix=/usr/local/gmp-4.3.2 && make && make install
/opt/mpfr-2.4.2/configure --prefix=/usr/local/mpfr-2.4.2/ --with-gmp=/usr/local/gmp-4.3.2 && make && make install
/opt/mpc-0.8.1/configure --prefix=/usr/local/mpc-0.8.1/ --with-gmp=/usr/local/gmp-4.3.2/ --with-mpfr=/usr/local/mpfr-2.4.2/ && make && make install
/opt/gcc-5.3.0/configure --prefix=/usr/local/gcc-5.3.0 -enable-threads=posix -disable-checking -disable-multilib -enable-languages=c,c++ --with-gmp=/usr/local/gmp-4.3.2 --with-mpfr=/usr/local/mpfr-2.4.2 --with-mpc=/usr/local/mpc-0.8.1 && make && make install
編譯需要時間很長30分鐘-1個小時,所以請耐心等待 可以直接./configure編譯不加其他選項
編譯完成後 需要root用戶去 /etc/bashrc 或者 /etc/profile 。其他用戶去/home/.bashrc 文件裏頭後者尾部添加一行
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/mpc-0.8.1/lib:/usr/local/gmp-4.3.2/lib:/usr/local/mpfr-2.4.2/lib:/usr/local/gcc-5.3.0/lib:/usr/local/gcc-5.3.0/lib64
卸載老版的gcc和gcc-c++ ,去/usr/bin目錄下
創建軟連接
ln -s /usr/local/gcc-5.3.0/bin/gcc gcc in -s /usr/local/gcc-5.3.0/bin/g++ g++
首先你需要find 查找一下 有沒有 ** /usr/local/gcc-5.3.0/bin/gcc ** 沒有的話代表你編譯還是沒有成功 創建完成之後然後重啓
gcc -v 查看一下版本信息 如果是5.3.0 恭喜你成功了。

報錯 如果報缺少依賴下們的不用細究直接裝就完了。

yum install libxml2 libxml2-devel openssl openssl-devel bzip2 bzip2-devel libcurl libcurl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel gmp gmp-devel libmcrypt libmcrypt-devel readline readline-devel libxslt libxslt-devel re2c
其餘的報錯多是你命令敲錯了或者是內存不足
如果內存不足就 swap 分一點

總結:

網上看好多小夥伴兒吐槽做了很長時間,我其實也弄了差不多一天的時間
原因一下幾點: 官網下載的滿得花時間找國內的鏡像站,安裝gcc5.3.0以上的不知道需要解決那些依賴, 編譯的時間慢,以及編譯到最後會出報錯,報錯信息一般都會有提示,翻譯沒看到就go’og’le 一下

很久沒寫博客了,今天更新一篇博客還有點手生,如果表達的不夠清楚或者沒有看懂歡迎留言討論,如果能保住到大家希望能給一個點贊好評加關注!!

大家的點贊好評,是我寫出每一篇博客的動力!!!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章