centos 下編譯 gcc

來源:互聯網
上載者:User

由於PHP7在編譯過程需要的GCC版本比較高,而在 wdlinux 中內建的 gcc 版本滿足不了PHP7的編譯需求,因此這裡才有了 gcc 的編譯過程

實際上在編譯 gcc 的過程中又遇到了好多坑,這才有了這篇文章用於記錄整個過程 安裝 GCC 下載

先到這裡去找一個新版本的 gcc 源碼,大家可以自行到 gcc 官網尋找地址,這裡使用這個地址下載,主要是考慮的下載速度問題
http://gcc.skazkaforyou.com/releases/
我下載的是 5.3.0 版本,這個是當前日期下的最新版本了
http://gcc.skazkaforyou.com/releases/gcc-5.3.0/gcc-5.3.0.tar.gz 配置

可以先執行一下

./configure

執行結果

從上圖可以看到,這裡需要幾個 with 選項,命令寫全後如下

./configure --with-gmp=/usr/local/gmp --with-mpfr=/usr/local/mpfr --with-mpc=/usr/local/mpc

到這裡後可以先跳到 安裝 GMP、MPFR、MPC 查看,如果都已經安裝完成,就可以執行配置過程了,僅僅執行上面的命令,會得到這樣的錯誤提示

需要關閉 multilib,新命令如下

./configure --with-gmp=/usr/local/gmp --with-mpfr=/usr/local/mpfr --with-mpc=/usr/local/mpc --disable-multilib

再執行配置過程

返回 creating Makefile 表示配置過程成功執行 編譯並安裝

make && make install

發現編譯沒過,表示汗一個,會提示錯誤資訊讓開啟 config.log 查看日誌,如下提示

“when loading shared libraries:libmpc.so.3:cannot open shared object file: No such file or directory”.

因此,需要修改環境變數 LD_LIBRARY_PATH, 命令為

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/mpc/lib:/usr/local/gmp/lib:/usr/local/mpfr/lib

然後再執行編譯過程即可,程式編譯完成後執行命令

source /etc/profile

再執行

gcc -v

查看版本號碼

安裝 GMP、MPFR、MPC

那麼等號後面的這幾個路徑是從哪裡來的呢。這裡就需要先安裝這幾個檔案 下載

GMP
MPFR
MPC 配置

因為各個模組之間都有依賴關係,因此這裡需要先安裝 GMP , 再安裝 MPFR , 最後再安裝 MPC,
各個的配置的過程如下

GMP

./configure --prefix=/usr/local/gmp

MPFR

./configure --prefix=/usr/local/mpfr --with-gmp=/usr/local/gmp

MPC

./configure --prefix=/usr/local/mpc --with-gmp=/usr/local/gmp --with-mpfr=/usr/local/mpfr
編譯並安裝

所有的編譯命令都是同樣的,執行命令如下

make && make install

注意:執行命令前,請確定自己所在的目錄是否為各自的模組源碼目錄 寫在最後的:

上面的編譯過程是延續了老版本的安裝風格,在網上查閱了多個資料並驗證後發現在 gcc4.4版本以及當前編譯版本 gcc5.3.0中均有 contrib/download_prerequisites,因此,可以省略下載安裝 GMP,MPC,MPFR的過程,直接執行命令

/usr/src/gcc-5.3.0/contrib/download_prerequisites

即可完成安裝

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.