RedHat gcc编译器版本升级到4.8.2支持C++11标准

原来环境信息

Red Hat Enterprise Linux Server release 6.4 (Santiago)
gcc4.4.7
这里写图片描述
这里写图片描述

升级到gcc4.8.2

gcc4.8以上版本才支持C++11标准,网上很多都是装的4.8系列的版本,虽然现在已经到8.0系列版本,为稳定起见 装这个版本的。下面步骤是在RedHat下安装的,如果是Ubuntu或者Centos 安装步骤都差不多,安装软件时一定要采用root权限

所需软件包

gmp-4.3.2 ftp://ftp.gnu.org/gnu/gmp/gmp-4.3.2.tar.bz2
mpfr-2.4.2 http://www.mpfr.org/mpfr-2.4.2/mpfr-2.4.2.tar.bz2
mpc-0.8.1(需要先装mpfr) http://www.multiprecision.org/mpc/download/mpc-0.8.1.tar.gz
isl-0.12.2.tar.bz2 ftp://gcc.gnu.org/pub/gcc/infrastructure/isl-0.12.2.tar.bz2
gcc-4.8.2.tar.gz http://gcc.skazkaforyou.com/releases/gcc-4.8.2/gcc-4.8.2.tar.gz

安装步骤

先将5个安装包解压,然后安装。
tar jxvf gmp-4.3.2.tar.bz2
tar jxvf isl-0.12.2.tar.bz2
tar jxvf mpfr-2.4.2.tar.bz2
tar zxvf mpc-0.8.1.tar.gz
tar zxvf gcc-4.8.2.tar.gz
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
安装顺序,前面4个安装包先安装,最后安装gcc,其中mpfr在mpc 安装前进行安装
分别在4个安装包的解压文件夹中执行下面命令。一定要使用root权限
Red Hat 使用 su 切换到root权限,然后执行下面命令。4个解压目录下都要分别执行,分别执行成功再往下走
./configure –prefix=/usr 生成makefile文件
make && make install 进行源码编译和安装
这里写图片描述
这里写图片描述
这里写图片描述
前面4个安装包都能正常安装,安装完之后,开始安装gcc . 执行gcc安装包环境配置检测前,先配置下动态库搜索路径,修改/etc/ld.so.conf文件添加/usr/local/lib
这里写图片描述
这里写图片描述
让配置生效执行ldconfig
这里写图片描述
执行gcc环境配置生成makefile文件,下面单词前都是2个-
./configure –prefix=/usr –enable-threads=posix –disable-checking –enable-languages=c,c++ –disable-multilib
这里写图片描述
makefile文件创建成功,gcc安装就成功了一大半了。
这里写图片描述
然后进行 源码编译和安装这一步执行比较耗时间估计要1个小时吧,不出意外应该会安装成功。
make && make install
这里写图片描述
gcc版本升级成功
这里写图片描述
使用c++11标准进行编译
这里写图片描述

其他问题解决思路

问题主要可能出在./configure 中,如果生成makefile不成功,会提示错误原因,可以进入到config.log 搜索 error,再针对error进行搜索。如果提示某个.so找不到就是动态库的链接问题,将相应依赖的库路径添加到ld.so.conf中然后再刷新配置ldconfig。

猜你喜欢

转载自blog.csdn.net/qq_29542611/article/details/80261816