Redhat 6.6离线升级gcc-4.8

来源:互联网 发布:现货交易模拟软件 编辑:程序博客网 时间:2024/05/17 23:08

一.背景

由于项目需要,必须在redhat6.6上安装ceph jewel安装包,而jewel(10.2.7)版本的源码依赖于gcc-4.8,所以必须在redhat6.6上先升级gcc到4.8版本。

二.获取源码

从http://gcc.gnu.org/下载gcc安装包 gcc-4.8.1.tar.gz
从ftp://ftp.gnu.org/gnu/gmp/ 下载GMP安装包 gmp-4.3.2 .tar.bz2
从http://ftp.gnu.org/gnu/mpfr/ 下载MPFR安装包 mpfr-2.4.2.tar.gz
从http://www.cise.ufl.edu/mirrors/GNU/pub/gnu/mpc 下载MPC安装包 mpc-0.8.1.tar.gz

下载完源码后,进行源码的编译升级。

三.源码安装

分别对gmp、mpfr、mpc进行解压、编译

tar xvf gmp-4.3.2 .tar.bz2
tar xvf mpfr-2.4.2.tar.gz
tar xvf mpc-0.8.1.tar.gz
cd gmp-4.3.2
./confiure;make;make install

默认gmp安装到/usr/local/include 和 /usr/local/lib,安装mpfr需要依赖此。

cd ../mpfr-2.4.2
./configure –with-gmp-include=/usr/local/include –with-gmp-lib=/usr/local/lib;make;make install
cd ../mpc-0.8.1
./confiure;make;make install

安装完三个依赖包以后,对gcc进行升级

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
./configure –prefix=/usr/local/gcc4.8 –enable-threads=posix –disable-checking –disable-multilib –enable-languages=c,c++
make
make install

make过程中需要等待蛮长一段时间,耐心等待吧。。

四.设置工作环境

安装完成后,系统默认没有修改环境变量,目前还是使用老版本的gcc。
设置使用新版gcc:
方法一:

update-alternatives –install /usr/bin/gcc gcc /usr/local/gcc4.8/bin/i686-pc-linux-gnu-gcc 40

方法二:

mkdir /usr/gcc447backup/
mv /usr/bin/{gcc,g++} /usr/gcc447backup
ln -s /usr/local/gcc4.8/bin/gcc /usr/bin/gcc
ln -s /usr/local/gcc4.8/bin/g++ /usr/bin/g++

其实,方法一和方法二的原理类似,也是利用软链接进行版本切换。

0 0
原创粉丝点击