Linuxgcc版本升级
操作环境 RHEL/Centos 6/7,在进⾏内核编译时编译器版本,需要升级gcc编译器,选择gcc-7.3.0。
1、查看当前RHEL/Centos版本:
[root@linuxprobe ~]# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 7.0 (Maipo)
2、查看现有的gcc版本:
[root@linuxprobe ~]# gcc --version
gcc (GCC) 4.8.220140120 (Red Hat 4.8.2-16)
Copyright (C) 2013 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
[root@linuxprobe ~]# gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/4.8.2/lto-wrapper
Target: x86_64-redhat-linux
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=dhat/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --e Thread model: posix
gcc version 4.8.220140120 (Red Hat 4.8.2-16) (GCC)
[root@linuxprobe ~]# gcc --version
3、安装RHEL/Centos7默认的开发⼯具,包含gcc,g++,make等等⼀系列⼯具:
[root@linuxprobe ~]# yum groupinstall "Development Tools"
4、查看默认动态库:
[root@linuxprobe ~]# strings /usr/lib64/libstdc++.so.6 | grep GLIBC
GLIBCXX_3.4
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
GLIBCXX_3.4.14
GLIBCXX_3.4.15
GLIBCXX_3.4.16
GLIBCXX_3.4.17
GLIBCXX_3.4.18
GLIBCXX_3.4.19
GLIBC_2.3
GLIBC_2.2.5
GLIBC_2.14
GLIBC_2.4
GLIBC_2.3.2
GLIBCXX_DEBUG_MESSAGE_LENGTH
[root@linuxprobe ~]# strings /usr/lib64/libstdc++.so.6 | grep
5、获取安装包并解压:
[root@linuxprobe ~]# cd /usr/local/src/
[root@linuxprobe src]# wget /gnu/gcc/gcc-7.3.0/gcc-7.3.
[root@linuxprobe src]# tar xvf gcc-7.3.
6、安装gcc的依赖软件,gcc的软件包内提供了⾃动下载需要软件的脚本./contrib/download_prerequisites ,这个神奇的⽂件会帮我们下载、配置、安装
依赖库,可以节约我们⼤量的时间和精⼒:
[root@linuxprobe src]# cd gcc-7.3.0/
[root@linuxprobe gcc-7.3.0]# ./contrib/download_prerequisites
7、⽣成Makefile⽂件:
[root@linuxprobe gcc-7.3.0]# ./configure -enable-checking=release -enable-languages=c,c++ -disable-multilib
8、编译gcc:
[root@linuxprobe gcc-7.3.0]# make -j4 //多核电脑可以添加 “-j4” :make对多核处理器的优化选项,此步骤⾮常耗时
[root@linuxprobe gcc-7.3.0]# ls /usr/local/bin | grep gcc
9、安装gcc:
[root@linuxprobe gcc-7.3.0]# make install
10、配置gcc:
[root@linuxprobe gcc-7.3.0]# cd ~
[root@linuxprobe ~]# find /usr/local/src/gcc-7.3.0/ -name "libstdc++.so*"
/usr/local/src/gcc-7.3.0/stage1-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6.0.24
/usr/local/src/gcc-7.3.0/stage1-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6
linux下gcc编译的四个步骤/usr/local/src/gcc-7.3.0/stage1-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so
/usr/local/src/gcc-7.3.0/prev-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6.0.24
/usr/local/src/gcc-7.3.0/prev-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6
/usr/local/src/gcc-7.3.0/prev-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so
/
usr/local/src/gcc-7.3.0/x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6.0.24
/usr/local/src/gcc-7.3.0/x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6
/usr/local/src/gcc-7.3.0/x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so
[root@linuxprobe ~]# cd /usr/lib64
[root@linuxprobe lib64]# cp /usr/local/src/gcc-7.3.0/stage1-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6.0.24 .
[root@linuxprobe lib64]# mv libstdc++.so.6 libstdc++.so.6.old
[root@linuxprobe lib64]# ln -sv libstdc++.so.6.0.22 libstdc++.so.6
‘libstdc++.so.6’ -> ‘libstdc++.so.6.0.22’
View Code
11、重启,查看升级后的gcc版本:
[root@localhost ~]# gcc --version
12、查看最新动态库:
[root@localhost ~]# strings /usr/lib64/libstdc++.so.6 | grep GLIBC
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论