CentOS 6.9升级GCC至7.3.0版本

1、查看当前centos版本:  cat /etc/redhat-release

2、 安装centos6.9默认的开发工具,包含gcc,g++,make等等一系列工具:

yum groupinstall "Development Tools"

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

[root@noi ~]# strings /usr/lib64/libstdc++.so. | grep GLIBC
GLIBCXX_3.
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBC_2.2.5
GLIBC_2.
GLIBC_2.
GLIBC_2.3.2
GLIBCXX_FORCE_NEW
GLIBCXX_DEBUG_MESSAGE_LENGTH

4、下载gcc:  wget http://ftp.gnu.org/gnu/gcc/gcc-7.3.0/gcc-7.3.0.tar.xz

5、解压gcc:

# yum -y install xz
# tar -xf gcc-7.3..tar.xz -C /usr/src
# cd /usr/src/gcc-7.3.

6、安装gcc的依赖软件,gcc的软件包内提供了自动下载需要软件的脚本: ./contrib/download_prerequisites

7、编译gcc

# ./configure -enable-checking=release -enable-languages=c,c++ -disable-multilib
# make //多核电脑可以添加 “-j4” :make对多核处理器的优化选项,此步骤非常耗时
# make install
# ls /usr/local/bin | grep gcc

8、配置gcc

[root@noi ~]# find /usr/src/gcc-7.3.0/ -name "libstdc++.so*"
/usr/src/gcc-7.3.0/stage1-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6.0.24
/usr/src/gcc-7.3.0/stage1-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so
/usr/src/gcc-7.3.0/stage1-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6
/usr/src/gcc-7.3.0/prev-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6.0.24
/usr/src/gcc-7.3.0/prev-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so
/usr/src/gcc-7.3.0/prev-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6
/usr/src/gcc-7.3.0/x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6.0.24
/usr/src/gcc-7.3.0/x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so
/usr/src/gcc-7.3.0/x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6
# cd /usr/lib64
# cp /usr/src/gcc-7.3.0/stage1-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6.0.24 .
# mv libstdc++.so. libstdc++.so..old
# ln -sv libstdc++.so.6.0. libstdc++.so.

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

CentOS 6.9升级GCC至7.3.0版本

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

11、有时候在VPS上编译时,常常因为内存不足导致以下错误提示:

make[]: *** [s-attrtab] Killed
make[]: Leaving directory `/root/download/gcc-4.9./objdir/gcc'
make[]: *** [all-stage1-gcc] Error
make[]: Leaving directory `/root/download/gcc-4.9./objdir'
make[]: *** [stage1-bubble] Error
make[]: Leaving directory `/root/download/gcc-4.9./objdir'
make: *** [all] Error

重新启动以下就好了。

本文参考:https://www.linuxidc.com/Linux/2017-10/147256.htm

上一篇:HDU 1425 sort(堆排序/快排/最大堆/最小堆)


下一篇:delphi Base64编码/解码及数据压缩/解压知识