CentOS 6.9升级gcc至6.4.0版本

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CentOS 6.9升级gcc至6.4.0版本相关的知识,希望对你有一定的参考价值。

一、升级前测试:

1、 查看系统版本:# cat /etc/redhat-release

技术分享


2、 查看默认的gcc版本:# gcc --version

技术分享



3、 查看默认动态库:# strings /usr/lib64/libstdc++.so.6 | grep GLIBC

技术分享


4、 不支持c++11的新特性:

尝试写一个C++11特性的程序段tryCpp11.cc,使用了shared_ptr

# vim /tmp/tryCpp11.cc

#include <iostream>

#include <memory>

int main()

{

std::shared_ptr<int> pInt(new int(5));

std::cout << *pInt << std::endl;

return 0;

}

技术分享

# cd /tmp

# g++ -std=c++11 -o tryCpp11 tryCpp11.cc

技术分享


二、下载gcc

下载地址http://ftp.gnu.org/gnu/gcc/,版本gcc-6.4.0.tar.xz,或者# yum -y install wget

# wget http://ftp.gnu.org/gnu/gcc/gcc-6.4.0/gcc-6.4.0.tar.xz


三、编译安装gcc

# yum -y install xz

# tar -xf gcc-6.4.0.tar.xz -C /usr/src

# cd /usr/src/gcc-6.4.0

=================================================================================

#./contrib/download_prerequisites

技术分享

//通过FTP的方式下载编译gcc时需要用到的mpfr-2.4.2.tar.bz2gmp-4.3.2.tar.bz2mpc-0.8.1.tar.gzisl-0.15.tar.bz2软件包,由于可能会出现无法下载的情况,所以事先将这4个软件包放至在/usr/src/gcc-6.4.0目录下,并解压

# cd /usr/src/gcc-6.4.0

# cp /software/mpfr-2.4.2.tar.bz2 .

# cp /software/gmp-4.3.2.tar.bz2 .

# cp /software/mpc-0.8.1.tar.gz .

# cp /software/isl-0.15.tar.bz2 .

# tar -xf mpfr-2.4.2.tar.bz2

# tar -xf gmp-4.3.2.tar.bz2

# tar -xf mpc-0.8.1.tar.gz

# tar -xf isl-0.15.tar.bz2

# ln -sv mpfr-2.4.2 mpfr

# ln -sv gmp-4.3.2 gmp

# ln -sv mpc-0.8.1 mpc

# ln -sv isl-0.15 isl

# ls

技术分享

=================================================================================

# ./configure -enable-checking=release -enable-languages=c,c++ -disable-multilib

# make -j4      //-j4make对多核处理器的优化选项,此步骤非常耗时

# make install

# ls /usr/local/bin | grep gcc

技术分享


四、配置gcc

# find / -name "libstdc++.so*"

技术分享

# cd /usr/lib64

# cp /usr/src/gcc-6.4.0/stage1-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6.0.22 .

# mv libstdc++.so.6 libstdc++.so.6.old

# ln -sv libstdc++.so.6.0.22 libstdc++.so.6


五、升级后验证:

1、 查看升级后的gcc版本(有时可能需要重启服务器才能看到更新后的版本):# gcc --version

技术分享


2、 查看最新动态库:# strings /usr/lib64/libstdc++.so.6 | grep GLIBC

技术分享


3、 支持c++11的新特性:

# cd /tmp

# g++ -std=c++11 -o tryCpp11 tryCpp11.cc

# ./tryCpp11

技术分享


本文出自 “天道酬勤” 博客,请务必保留此出处http://qiuyue.blog.51cto.com/1246073/1961304

以上是关于CentOS 6.9升级gcc至6.4.0版本的主要内容,如果未能解决你的问题,请参考以下文章

CentOS 6下gcc升级的操作记录(由默认的4.4.7升级到6.4.0版本)

CentOS 7升级gcc版本

gcc升级至高版本

gcc 版本升级

Centos 6.9 编译安装cmake 3.10.2

CentOS7升级gcc