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等其他工具的切换也可按照上面的方式进行。


版权声明:本文为u013410960原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。