1. 程式人生 > >fedora實現多版本gcc共享

fedora實現多版本gcc共享

本人PC安裝的是64bit  fedora19 ,系統預設gcc是 4.8的版本,對於某些應用來說需要底版本的gcc才能編譯,執行以下步驟可知實現多個版本的共存:

1. 下載 gcc,如我下載的是 gcc4.6,解壓原始碼包

2. 執行原始碼包下的檔案:

./contrib/download_prerequisites  //自動安裝需要的工具


4.  mkdir build  //建立gcc的安裝目錄

cd build

5. 配置

./configure --prefix=$PWD/build  --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-linker-hash-style=gnu --enable-languages=c,c++,objc,obj-c++,java --enable-plugin   --with-tune=generic --with-arch_32=i686 --build=x86_64-redhat-linux

6.

make
make install

5. 匯出環境變數

export GCC_4_6_PACH=/home/emy/software/gcc-4.6.4/build
export PATH=$GCC_4_6_PACH/bin:$PATH
export LD_LIBRARY_PATH $GCC_4_6_PACH/lib:$GCC_4_6_PACH/lib64:$LD_LIBRARY_PATH

6. 設定共存向

/usr/bin/gcc是系統預設的gcc,將其更名位 gcc4_8,同樣將預設的g++更名為 g++_4_8

//進行g++的切換設定

sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++_4_8 40
sudo update-alternatives --install /usr/bin/g++ g++  /home/emy/software/gcc-4.6.4/build/bin/g++ 50     ///home/emy/software/gcc-4.6.4/build/bin/g++是編譯生成的g++的路徑

sudo update-alternatives --config g++

即可選擇相應版本的g++

//進行gcc的切換設定
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc4_8 40
sudo update-alternatives --install /usr/bin/gcc gcc  /home/emy/software/gcc-4.6.4/build/bin/gcc 50

sudo update-alternatives --config gcc

java等其他工具的切換也可按照上面的方式進行。