天天看點

把ubuntu自帶的高gcc版本降到低版本(如gcc 3.4)的方法

轉載自:

部落格1、部落格2 、部落格3

步驟

第一步:

下載下傳所需gcc安裝包(.deb格式)

手動:老版本gcc下載下傳位址:http://old-releases.ubuntu.com/ubuntu/pool/universe/g/ ; http://archive.ubuntu.com/ubuntu/pool/universe/g/

 自動:wget http://old-releases.ubuntu.com/ubuntu/pool/universe/g/gcc-版本号/版本号.deb

 備注:使用wget自動下載下傳時,可能出現中斷,需要重新下載下傳。重新下載下傳時,下載下傳的檔案命名時會自動追加(1)。使得,dpkg時找不到重新下載下傳的檔案。需要手動更改檔案名。
           

第二步:

dpkg下載下傳的安裝包。

第三步:

dpkg後,如果沒有顯示降級,可以手動設定優先級,如下:

$sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.4 40 (這裡“40”是優先級,值越大優先級越高)

$sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.6 60 (本機自帶的設定為60更高的優先級)

舉例

以gcc3.4為例依次執行如下指令即可(下載下傳安裝前面5個即可):

wget http://old-releases.ubuntu.com/ubuntu/pool/universe/g/gcc-3.4/gcc-3.4-base_3.4.6-6ubuntu3_amd64.deb

sudo dpkg --force-depends -i gcc-3.4-base_3.4.6-6ubuntu3_amd64.deb



wget http://old-releases.ubuntu.com/ubuntu/pool/universe/g/gcc-3.4/gcc-3.4_3.4.6-6ubuntu3_amd64.deb

sudo dpkg --force-depends -i gcc-3.4_3.4.6-6ubuntu3_amd64.deb 


wget http://old-releases.ubuntu.com/ubuntu/pool/universe/g/gcc-3.4/cpp-3.4_3.4.6-6ubuntu3_amd64.deb

sudo dpkg --force-depends -i cpp-3.4_3.4.6-6ubuntu3_amd64.deb 



wget http://old-releases.ubuntu.com/ubuntu/pool/universe/g/gcc-3.4/g++-3.4_3.4.6-6ubuntu3_amd64.deb

sudo dpkg --force-depends -i g++-3.4_3.4.6-6ubuntu3_amd64.deb


wget http://old-releases.ubuntu.com/ubuntu/pool/universe/g/gcc-3.4/libstdc++6-dev_3.4.6-6ubuntu3_amd64.deb

sudo dpkg --force-depends -i libstdc++6-dev_3.4.6-6ubuntu3_amd64.deb


wget http://old-releases.ubuntu.com/ubuntu/pool/universe/g/gcc-3.4/g77-3.4_3.4.6-6ubuntu3_amd64.deb

sudo dpkg --force-depends -i g77-3.4_3.4.6-6ubuntu3_amd64.deb


wget http://old-releases.ubuntu.com/ubuntu/pool/universe/g/gcc-3.4/libg2c0-dev_3.4.6-6ubuntu3_amd64.deb

sudo dpkg --force-depends -i libg2c0-dev_3.4.6-6ubuntu3_amd64.deb

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-3.4 30