Linux怎样更新Centos下Gcc版本支持C17?Centos7快速安装gcc8.3.1 可支持C++17(附gcc相关链接整理)

简介: Linux怎样更新Centos下Gcc版本支持C17?Centos7快速安装gcc8.3.1 可支持C++17(附gcc相关链接整理)

前言

centos7直接yum安装的那个gcc版本为4.8.5,对于大多数的需求来说都是低了。


现在最新的版本可能到9了,9.2 9.3的安装教程我在网上都搜到过,但是似乎9的版本都需要make和make install?编译时间得小半天吧,有时候还会有各种奇怪的报错。所以要求不是特别严格的话可以看看8.3.1版本,我不是很清楚它和这种费时巨大的在使用的时候会不会缺胳膊少腿的,但是我目前用着还行。

sudo yum install centos-release-scl
sudo yum install devtoolset-8-gcc*
scl enable devtoolset-8 bash
source /opt/rh/devtoolset-8/enable

后边执行mv命令的时候如果报错不用太过惊慌,这几句是用来替换掉直接安装的4.8.5版本的,但是没安装4.8.5软链接建立的命令也还是要执行的。

mv /usr/bin/gcc /usr/bin/gcc-4.8.5
ln -s /opt/rh/devtoolset-8/root/bin/gcc /usr/bin/gcc
mv /usr/bin/g++ /usr/bin/g++-4.8.5
ln -s /opt/rh/devtoolset-8/root/bin/g++ /usr/bin/g++
mv /usr/bin/c++ /usr/bin/c++-4.8.5
ln -s /opt/rh/devtoolset-8/root/bin/c++ /usr/bin/c++

后边执行mv命令的时候如果报错不用太过惊慌,这几句是用来替换掉直接安装的4.8.5版本的,但是没安装4.8.5软链接建立的命令也还是要执行的。

mv /usr/bin/gcc /usr/bin/gcc-4.8.5
ln -s /opt/rh/devtoolset-8/root/bin/gcc /usr/bin/gcc
mv /usr/bin/g++ /usr/bin/g++-4.8.5
ln -s /opt/rh/devtoolset-8/root/bin/g++ /usr/bin/g++
mv /usr/bin/c++ /usr/bin/c++-4.8.5
ln -s /opt/rh/devtoolset-8/root/bin/c++ /usr/bin/c++

可以查看一下版本看看了

gcc --version
g++ --version
c++ --version


如过在使用时出现如/usr/lib64/libstdc++.so.6: version `CXXABI_1.3.8’ not found这样的报错

拷入libstdc++.so.6.0.26在/usr/lib64下

mv libstdc++.so.6.0.26 /usr/lib64
cd /usr/lib64
rm -rf libstdc++.so.6
ln -s libstdc++.so.6.0.26 libstdc++.so.6

bstdc++.so.6.0.26放到百度网盘里了

链接: https://pan.baidu.com/s/1UEunOZKGL9z3_BU-V6mK0A?pwd=e1a1

提取码: e1a1


再放两个我之前用过的比较费时的9.2版本安装教程

https://blog.csdn.net/weixin_30994847/article/details/112821626

https://blog.csdn.net/RyanFang/article/details/100927373

如果安装的时候显示g++显示没有可用的包

sudo yum install gcc-c++

ubuntu16.04安装gcc-8 g++8.0

https://blog.csdn.net/dream_for_/article/details/117201988


GCC 命令行详解 -L 指定库的路径 -l 指定需连接的库名

https://blog.csdn.net/abc5382334/article/details/45049735

嵌入式Linux文件IO,GCC编译流程及参数分析,静态库创建和使用,ar crs libhello.a hello.o创建静态库,nm查看静态库中符号信息

https://blog.csdn.net/m0_37542524/article/details/83754738# Centos7快速安装gcc8.3.1 可支持C++17(附gcc相关链接整理)

实际手操:

直接贴命令行

[zryTest@master ~]$
[zryTest@master ~]$
[zryTest@master ~]$ ls
bin  conf  data  log  src
[zryTest@master ~]$ cd src/
[zryTest@master src]$ ls
ReadFileDemo-2.cpp  ReadFileDemo-3.cpp  ReadFileDemo-4.cpp
[zryTest@master src]$  g++ ReadFileDemo-4.cpp -o Test-4
ReadFileDemo-4.cpp:6:22: fatal error: filesystem: No such file or directory
 #include <filesystem>
                      ^
compilation terminated.
[zryTest@master src]$  g++ ReadFileDemo-4.cpp -o Test-4 -std=c++17
g++: error: unrecognized command line option ‘-std=c++17’
[zryTest@master src]$  g++ ReadFileDemo-4.cpp -o Test-4 -std=C++17
g++: error: unrecognized command line option ‘-std=C++17’
[zryTest@master src]$ g++ -version
g++: error: unrecognized command line option ‘-version’
g++: fatal error: no input files
compilation terminated.
[zryTest@master src]$ g++ -ver
g++: error: unrecognized command line option ‘-ver’
g++: fatal error: no input files
compilation terminated.
[zryTest@master src]$ g++ version
g++: error: version: No such file or directory
g++: fatal error: no input files
compilation terminated.
[zryTest@master src]$ ls /usr/bin/gcc* -l
-rwxr-xr-x 2 root root 768608 Sep 30  2020 /usr/bin/gcc
-rwxr-xr-x 1 root root  27088 Sep 30  2020 /usr/bin/gcc-ar
-rwxr-xr-x 1 root root  27088 Sep 30  2020 /usr/bin/gcc-nm
-rwxr-xr-x 1 root root  27088 Sep 30  2020 /usr/bin/gcc-ranlib
[zryTest@master src]$ rpm -qa|grep gcc
gcc-gfortran-4.8.5-44.el7.x86_64
gcc-c++-4.8.5-44.el7.x86_64
libgcc-4.8.5-44.el7.x86_64
gcc-4.8.5-44.el7.x86_64
[zryTest@master src]$ man gcc
[zryTest@master src]$
[zryTest@master src]$ man gcc
[zryTest@master src]$
[zryTest@master src]$ g++: error: unrecognized command line option ‘-ver’
-bash: g++:: command not found
[zryTest@master src]$ sudo yum install centos-release-scl
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirrors.huaweicloud.com
 * epel: mirrors.tuna.tsinghua.edu.cn
 * extras: mirrors.tuna.tsinghua.edu.cn
 * updates: mirrors.huaweicloud.com
clickhouse-stable/signature                                                             |  833 B  00:00:00
Retrieving key from https://packages.clickhouse.com/rpm/stable/repodata/repomd.xml.key
clickhouse-stable/signature                                                             | 3.0 kB  00:00:01 !!!
https://packages.clickhouse.com/rpm/stable/repodata/repomd.xml: [Errno -1] repomd.xml signature could not be verified for clickhouse-stable
Trying other mirror.
Resolving Dependencies
--> Running transaction check
---> Package centos-release-scl.noarch 0:2-3.el7.centos will be installed
--> Processing Dependency: centos-release-scl-rh for package: centos-release-scl-2-3.el7.centos.noarch
--> Running transaction check
---> Package centos-release-scl-rh.noarch 0:2-3.el7.centos will be installed
--> Finished Dependency Resolution

Dependencies Resolved

===============================================================================================================
 Package                            Arch                Version                      Repository           Size
===============================================================================================================
Installing:
 centos-release-scl                 noarch              2-3.el7.centos               extras               12 k
Installing for dependencies:
 centos-release-scl-rh              noarch              2-3.el7.centos               extras               12 k

Transaction Summary
===============================================================================================================
Install  1 Package (+1 Dependent package)

Total download size: 24 k
Installed size: 39 k
Is this ok [y/d/N]: y
Downloading packages:
(1/2): centos-release-scl-2-3.el7.centos.noarch.rpm                                     |  12 kB  00:00:00
(2/2): centos-release-scl-rh-2-3.el7.centos.noarch.rpm                                  |  12 kB  00:00:00
---------------------------------------------------------------------------------------------------------------
Total                                                                          110 kB/s |  24 kB  00:00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : centos-release-scl-rh-2-3.el7.centos.noarch                                                 1/2
  Installing : centos-release-scl-2-3.el7.centos.noarch                                                    2/2
  Verifying  : centos-release-scl-2-3.el7.centos.noarch                                                    1/2
  Verifying  : centos-release-scl-rh-2-3.el7.centos.noarch                                                 2/2

Installed:
  centos-release-scl.noarch 0:2-3.el7.centos

Dependency Installed:
  centos-release-scl-rh.noarch 0:2-3.el7.centos

Complete!
[zryTest@master src]$
[zryTest@master src]$
[zryTest@master src]$ sudo yum install devtoolset-8-gcc*
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirrors.huaweicloud.com
 * centos-sclo-rh: mirrors.huaweicloud.com
 * centos-sclo-sclo: mirrors.huaweicloud.com
 * epel: mirrors.tuna.tsinghua.edu.cn
 * extras: mirrors.tuna.tsinghua.edu.cn
 * updates: mirrors.huaweicloud.com
centos-sclo-rh                                                                          | 3.0 kB  00:00:00
centos-sclo-sclo                                                                        | 3.0 kB  00:00:00
clickhouse-stable/signature                                                             |  833 B  00:00:00
Retrieving key from https://packages.clickhouse.com/rpm/stable/repodata/repomd.xml.key
clickhouse-stable/signature                                                             | 3.0 kB  00:00:01 !!!
https://packages.clickhouse.com/rpm/stable/repodata/repomd.xml: [Errno -1] repomd.xml signature could not be verified for clickhouse-stable
Trying other mirror.
(1/2): centos-sclo-sclo/x86_64/primary_db                                               | 300 kB  00:00:00
(2/2): centos-sclo-rh/x86_64/primary_db                                                 | 3.4 MB  00:00:00
Resolving Dependencies
--> Running transaction check
---> Package devtoolset-8-gcc.x86_64 0:8.3.1-3.2.el7 will be installed
--> Processing Dependency: devtoolset-8-binutils >= 2.22.52.0.1 for package: devtoolset-8-gcc-8.3.1-3.2.el7.x86_64
--> Processing Dependency: devtoolset-8-runtime for package: devtoolset-8-gcc-8.3.1-3.2.el7.x86_64
---> Package devtoolset-8-gcc-c++.x86_64 0:8.3.1-3.2.el7 will be installed
--> Processing Dependency: devtoolset-8-libstdc++-devel = 8.3.1-3.2.el7 for package: devtoolset-8-gcc-c++-8.3.1-3.2.el7.x86_64
---> Package devtoolset-8-gcc-gdb-plugin.x86_64 0:8.3.1-3.2.el7 will be installed
---> Package devtoolset-8-gcc-gfortran.x86_64 0:8.3.1-3.2.el7 will be installed
--> Processing Dependency: devtoolset-8-libquadmath-devel = 8.3.1-3.2.el7 for package: devtoolset-8-gcc-gfortran-8.3.1-3.2.el7.x86_64
--> Processing Dependency: libgfortran5 >= 8.1.1 for package: devtoolset-8-gcc-gfortran-8.3.1-3.2.el7.x86_64
---> Package devtoolset-8-gcc-plugin-devel.x86_64 0:8.3.1-3.2.el7 will be installed
--> Processing Dependency: gmp-devel >= 4.1.2-8 for package: devtoolset-8-gcc-plugin-devel-8.3.1-3.2.el7.x86_64
--> Processing Dependency: libmpc-devel >= 0.8.1 for package: devtoolset-8-gcc-plugin-devel-8.3.1-3.2.el7.x86_64
--> Processing Dependency: mpfr-devel >= 2.2.1 for package: devtoolset-8-gcc-plugin-devel-8.3.1-3.2.el7.x86_64
--> Running transaction check
---> Package devtoolset-8-binutils.x86_64 0:2.30-55.el7.2 will be installed
---> Package devtoolset-8-libquadmath-devel.x86_64 0:8.3.1-3.2.el7 will be installed
---> Package devtoolset-8-libstdc++-devel.x86_64 0:8.3.1-3.2.el7 will be installed
---> Package devtoolset-8-runtime.x86_64 0:8.1-1.el7 will be installed
--> Processing Dependency: scl-utils >= 20120927-11 for package: devtoolset-8-runtime-8.1-1.el7.x86_64
---> Package gmp-devel.x86_64 1:6.0.0-15.el7 will be installed
---> Package libgfortran5.x86_64 0:8.3.1-2.1.1.el7 will be installed
---> Package libmpc-devel.x86_64 0:1.0.1-3.el7 will be installed
---> Package mpfr-devel.x86_64 0:3.1.1-4.el7 will be installed
--> Running transaction check
---> Package scl-utils.x86_64 0:20130529-19.el7 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

===============================================================================================================
 Package                                Arch           Version                    Repository              Size
===============================================================================================================
Installing:
 devtoolset-8-gcc                       x86_64         8.3.1-3.2.el7              centos-sclo-rh          30 M
 devtoolset-8-gcc-c++                   x86_64         8.3.1-3.2.el7              centos-sclo-rh          12 M
 devtoolset-8-gcc-gdb-plugin            x86_64         8.3.1-3.2.el7              centos-sclo-rh         123 k
 devtoolset-8-gcc-gfortran              x86_64         8.3.1-3.2.el7              centos-sclo-rh          12 M
 devtoolset-8-gcc-plugin-devel          x86_64         8.3.1-3.2.el7              centos-sclo-rh         1.4 M
Installing for dependencies:
 devtoolset-8-binutils                  x86_64         2.30-55.el7.2              centos-sclo-rh         5.5 M
 devtoolset-8-libquadmath-devel         x86_64         8.3.1-3.2.el7              centos-sclo-rh         155 k
 devtoolset-8-libstdc++-devel           x86_64         8.3.1-3.2.el7              centos-sclo-rh         2.7 M
 devtoolset-8-runtime                   x86_64         8.1-1.el7                  centos-sclo-rh          20 k
 gmp-devel                              x86_64         1:6.0.0-15.el7             base                   181 k
 libgfortran5                           x86_64         8.3.1-2.1.1.el7            base                   796 k
 libmpc-devel                           x86_64         1.0.1-3.el7                base                    32 k
 mpfr-devel                             x86_64         3.1.1-4.el7                base                    68 k
 scl-utils                              x86_64         20130529-19.el7            base                    24 k

Transaction Summary
===============================================================================================================
Install  5 Packages (+9 Dependent packages)

Total download size: 65 M
Installed size: 188 M
Is this ok [y/d/N]: y
Downloading packages:
warning: /var/cache/yum/x86_64/7/centos-sclo-rh/packages/devtoolset-8-binutils-2.30-55.el7.2.x86_64.rpm: Header V4 RSA/SHA1 Signature, key ID f2ee9d55: NOKEY
Public key for devtoolset-8-binutils-2.30-55.el7.2.x86_64.rpm is not installed
(1/14): devtoolset-8-binutils-2.30-55.el7.2.x86_64.rpm                                  | 5.5 MB  00:00:00
(2/14): devtoolset-8-gcc-c++-8.3.1-3.2.el7.x86_64.rpm                                   |  12 MB  00:00:00
(3/14): devtoolset-8-gcc-gdb-plugin-8.3.1-3.2.el7.x86_64.rpm                            | 123 kB  00:00:00
(4/14): devtoolset-8-gcc-gfortran-8.3.1-3.2.el7.x86_64.rpm                              |  12 MB  00:00:00
(5/14): devtoolset-8-gcc-8.3.1-3.2.el7.x86_64.rpm                                       |  30 MB  00:00:01
(6/14): devtoolset-8-libquadmath-devel-8.3.1-3.2.el7.x86_64.rpm                         | 155 kB  00:00:00
(7/14): devtoolset-8-libstdc++-devel-8.3.1-3.2.el7.x86_64.rpm                           | 2.7 MB  00:00:00
(8/14): devtoolset-8-runtime-8.1-1.el7.x86_64.rpm                                       |  20 kB  00:00:00
(9/14): libgfortran5-8.3.1-2.1.1.el7.x86_64.rpm                                         | 796 kB  00:00:00
(10/14): gmp-devel-6.0.0-15.el7.x86_64.rpm                                              | 181 kB  00:00:00
(11/14): libmpc-devel-1.0.1-3.el7.x86_64.rpm                                            |  32 kB  00:00:00
(12/14): mpfr-devel-3.1.1-4.el7.x86_64.rpm                                              |  68 kB  00:00:00
(13/14): scl-utils-20130529-19.el7.x86_64.rpm                                           |  24 kB  00:00:00
(14/14): devtoolset-8-gcc-plugin-devel-8.3.1-3.2.el7.x86_64.rpm                         | 1.4 MB  00:00:00
---------------------------------------------------------------------------------------------------------------
Total                                                                           32 MB/s |  65 MB  00:00:02
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-SCLo
Importing GPG key 0xF2EE9D55:
 Userid     : "CentOS SoftwareCollections SIG (https://wiki.centos.org/SpecialInterestGroup/SCLo) <security@centos.org>"
 Fingerprint: c4db d535 b1fb ba14 f8ba 64a8 4eb8 4e71 f2ee 9d55
 Package    : centos-release-scl-rh-2-3.el7.centos.noarch (@extras)
 From       : /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-SCLo
Is this ok [y/N]: y
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : 1:gmp-devel-6.0.0-15.el7.x86_64                                                            1/14
  Installing : mpfr-devel-3.1.1-4.el7.x86_64                                                              2/14
  Installing : libmpc-devel-1.0.1-3.el7.x86_64                                                            3/14
  Installing : scl-utils-20130529-19.el7.x86_64                                                           4/14
  Installing : devtoolset-8-runtime-8.1-1.el7.x86_64                                                      5/14
  Installing : devtoolset-8-libstdc++-devel-8.3.1-3.2.el7.x86_64                                          6/14
  Installing : devtoolset-8-binutils-2.30-55.el7.2.x86_64                                                 7/14
  Installing : libgfortran5-8.3.1-2.1.1.el7.x86_64                                                        8/14
  Installing : devtoolset-8-gcc-8.3.1-3.2.el7.x86_64                                                      9/14
  Installing : devtoolset-8-libquadmath-devel-8.3.1-3.2.el7.x86_64                                       10/14
  Installing : devtoolset-8-gcc-gfortran-8.3.1-3.2.el7.x86_64                                            11/14
  Installing : devtoolset-8-gcc-c++-8.3.1-3.2.el7.x86_64                                                 12/14
  Installing : devtoolset-8-gcc-plugin-devel-8.3.1-3.2.el7.x86_64                                        13/14
  Installing : devtoolset-8-gcc-gdb-plugin-8.3.1-3.2.el7.x86_64                                          14/14
  Verifying  : libgfortran5-8.3.1-2.1.1.el7.x86_64                                                        1/14
  Verifying  : devtoolset-8-gcc-c++-8.3.1-3.2.el7.x86_64                                                  2/14
  Verifying  : scl-utils-20130529-19.el7.x86_64                                                           3/14
  Verifying  : devtoolset-8-libstdc++-devel-8.3.1-3.2.el7.x86_64                                          4/14
  Verifying  : devtoolset-8-runtime-8.1-1.el7.x86_64                                                      5/14
  Verifying  : devtoolset-8-gcc-gfortran-8.3.1-3.2.el7.x86_64                                             6/14
  Verifying  : devtoolset-8-gcc-8.3.1-3.2.el7.x86_64                                                      7/14
  Verifying  : 1:gmp-devel-6.0.0-15.el7.x86_64                                                            8/14
  Verifying  : libmpc-devel-1.0.1-3.el7.x86_64                                                            9/14
  Verifying  : devtoolset-8-gcc-plugin-devel-8.3.1-3.2.el7.x86_64                                        10/14
  Verifying  : devtoolset-8-libquadmath-devel-8.3.1-3.2.el7.x86_64                                       11/14
  Verifying  : mpfr-devel-3.1.1-4.el7.x86_64                                                             12/14
  Verifying  : devtoolset-8-binutils-2.30-55.el7.2.x86_64                                                13/14
  Verifying  : devtoolset-8-gcc-gdb-plugin-8.3.1-3.2.el7.x86_64                                          14/14

Installed:
  devtoolset-8-gcc.x86_64 0:8.3.1-3.2.el7                  devtoolset-8-gcc-c++.x86_64 0:8.3.1-3.2.el7
  devtoolset-8-gcc-gdb-plugin.x86_64 0:8.3.1-3.2.el7       devtoolset-8-gcc-gfortran.x86_64 0:8.3.1-3.2.el7
  devtoolset-8-gcc-plugin-devel.x86_64 0:8.3.1-3.2.el7

Dependency Installed:
  devtoolset-8-binutils.x86_64 0:2.30-55.el7.2          devtoolset-8-libquadmath-devel.x86_64 0:8.3.1-3.2.el7
  devtoolset-8-libstdc++-devel.x86_64 0:8.3.1-3.2.el7   devtoolset-8-runtime.x86_64 0:8.1-1.el7
  gmp-devel.x86_64 1:6.0.0-15.el7                       libgfortran5.x86_64 0:8.3.1-2.1.1.el7
  libmpc-devel.x86_64 0:1.0.1-3.el7                     mpfr-devel.x86_64 0:3.1.1-4.el7
  scl-utils.x86_64 0:20130529-19.el7

Complete!
[zryTest@master src]$ scl enable devtoolset-8 bash
[zryTest@master src]$ source /opt/rh/devtoolset-8/enable
[zryTest@master src]$ mv /usr/bin/gcc /usr/bin/gcc-4.8.5
mv: cannot move ‘/usr/bin/gcc’ to ‘/usr/bin/gcc-4.8.5’: Permission denied
[zryTest@master src]$ ln -s /opt/rh/devtoolset-8/root/bin/gcc /usr/bin/gcc
ln: failed to create symbolic link ‘/usr/bin/gcc’: File exists
[zryTest@master src]$ su -
Password:
Last login: Tue Mar 21 10:10:14 CST 2023 on pts/1
[root@master ~]# mv /usr/bin/gcc /usr/bin/gcc-4.8.5
[root@master ~]# ln -s /opt/rh/devtoolset-8/root/bin/gcc /usr/bin/gcc
[root@master ~]# mv /usr/bin/g++ /usr/bin/g++-4.8.5
[root@master ~]#
[root@master ~]#
[root@master ~]#
[root@master ~]#
[root@master ~]# ln -s /opt/rh/devtoolset-8/root/bin/g++ /usr/bin/g++
[root@master ~]# gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/opt/rh/devtoolset-8/root/usr/libexec/gcc/x86_64-redhat-linux/8/lto-wrapper
Target: x86_64-redhat-linux
Configured with: ../configure --enable-bootstrap --enable-languages=c,c++,fortran,lto --prefix=/opt/rh/devtoolset-8/root/usr --mandir=/opt/rh/devtoolset-8/root/usr/share/man --infodir=/opt/rh/devtoolset-8/root/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-shared --enable-threads=posix --enable-checking=release --enable-multilib --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-gcc-major-version-only --with-linker-hash-style=gnu --with-default-libstdcxx-abi=gcc4-compatible --enable-plugin --enable-initfini-array --with-isl=/builddir/build/BUILD/gcc-8.3.1-20190311/obj-x86_64-redhat-linux/isl-install --disable-libmpx --enable-gnu-indirect-function --with-tune=generic --with-arch_32=x86-64 --build=x86_64-redhat-linux
Thread model: posix
gcc version 8.3.1 20190311 (Red Hat 8.3.1-3) (GCC)
[root@master ~]# g++ -v
Using built-in specs.
COLLECT_GCC=g++
COLLECT_LTO_WRAPPER=/opt/rh/devtoolset-8/root/usr/libexec/gcc/x86_64-redhat-linux/8/lto-wrapper
Target: x86_64-redhat-linux
Configured with: ../configure --enable-bootstrap --enable-languages=c,c++,fortran,lto --prefix=/opt/rh/devtoolset-8/root/usr --mandir=/opt/rh/devtoolset-8/root/usr/share/man --infodir=/opt/rh/devtoolset-8/root/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-shared --enable-threads=posix --enable-checking=release --enable-multilib --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-gcc-major-version-only --with-linker-hash-style=gnu --with-default-libstdcxx-abi=gcc4-compatible --enable-plugin --enable-initfini-array --with-isl=/builddir/build/BUILD/gcc-8.3.1-20190311/obj-x86_64-redhat-linux/isl-install --disable-libmpx --enable-gnu-indirect-function --with-tune=generic --with-arch_32=x86-64 --build=x86_64-redhat-linux
Thread model: posix
gcc version 8.3.1 20190311 (Red Hat 8.3.1-3) (GCC)
[root@master ~]# c++ -v
Using built-in specs.
COLLECT_GCC=c++
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/4.8.5/lto-wrapper
Target: x86_64-redhat-linux
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-linker-hash-style=gnu --enable-languages=c,c++,objc,obj-c++,java,fortran,ada,go,lto --enable-plugin --enable-initfini-array --disable-libgcj --with-isl=/builddir/build/BUILD/gcc-4.8.5-20150702/obj-x86_64-redhat-linux/isl-install --with-cloog=/builddir/build/BUILD/gcc-4.8.5-20150702/obj-x86_64-redhat-linux/cloog-install --enable-gnu-indirect-function --with-tune=generic --with-arch_32=x86-64 --build=x86_64-redhat-linux
Thread model: posix
gcc version 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC)
[root@master ~]# mv /usr/bin/c++ /usr/bin/c++-4.8.5
[root@master ~]# ln -s /opt/rh/devtoolset-8/root/bin/c++ /usr/bin/c++
[root@master ~]# c++ -v
Using built-in specs.
COLLECT_GCC=c++
COLLECT_LTO_WRAPPER=/opt/rh/devtoolset-8/root/usr/libexec/gcc/x86_64-redhat-linux/8/lto-wrapper
Target: x86_64-redhat-linux
Configured with: ../configure --enable-bootstrap --enable-languages=c,c++,fortran,lto --prefix=/opt/rh/devtoolset-8/root/usr --mandir=/opt/rh/devtoolset-8/root/usr/share/man --infodir=/opt/rh/devtoolset-8/root/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-shared --enable-threads=posix --enable-checking=release --enable-multilib --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-gcc-major-version-only --with-linker-hash-style=gnu --with-default-libstdcxx-abi=gcc4-compatible --enable-plugin --enable-initfini-array --with-isl=/builddir/build/BUILD/gcc-8.3.1-20190311/obj-x86_64-redhat-linux/isl-install --disable-libmpx --enable-gnu-indirect-function --with-tune=generic --with-arch_32=x86-64 --build=x86_64-redhat-linux
Thread model: posix
gcc version 8.3.1 20190311 (Red Hat 8.3.1-3) (GCC)
[root@master ~]# 

可以看到,这里的 gcc、 g++、c++、的版本已经到了8.3.1 2019版本了。

接下来再次通过 man g++ 查看 -std的介绍文档依旧 保持不变,尝试更新man 手册 [[Linux 更新man说明手册,man中文手册]]

但是,再次使用g++ 编译已经解决库找不到的问题了。 并且 -std=c17-std=C++17已经可以识别出来了。



分享一个有趣的 学习链接:https://xxetb.xet.tech/s/HY8za































目录
相关文章
|
16天前
|
安全 Linux 虚拟化
|
24天前
|
Web App开发 搜索推荐 Unix
Linux系统之MobaXterm远程连接centos的GNOME桌面环境
【10月更文挑战第21天】Linux系统之MobaXterm远程连接centos的GNOME桌面环境
194 4
Linux系统之MobaXterm远程连接centos的GNOME桌面环境
|
1月前
|
Linux 网络安全 数据安全/隐私保护
Linux系统之Centos7安装cockpit图形管理界面
【10月更文挑战第12天】Linux系统之Centos7安装cockpit图形管理界面
71 1
Linux系统之Centos7安装cockpit图形管理界面
|
26天前
|
Kubernetes Linux 测试技术
|
1月前
|
存储 网络协议 Linux
AWS实操-EC2-创建购买linux(centos)EC2服务器
AWS实操-EC2-创建购买linux(centos)EC2服务器
|
6月前
|
存储 Linux 编译器
Linux C/C++ 编程 内存管理之道:探寻编程世界中的思维乐趣
Linux C/C++ 编程 内存管理之道:探寻编程世界中的思维乐趣
128 0
|
6月前
|
关系型数据库 MySQL 数据库
Linux C/C++ 开发(学习笔记七):Mysql数据库C/C++编程实现 插入/读取/删除
Linux C/C++ 开发(学习笔记七):Mysql数据库C/C++编程实现 插入/读取/删除
135 0
|
6月前
|
Shell Linux C++
Linux C/C++ 开发(学习笔记二):Shell脚本编程案例
Linux C/C++ 开发(学习笔记二):Shell脚本编程案例
106 0
|
Linux C语言 C++
Linux ICMP协议实现:C/C++编程指南
ICMP(Internet Control Message Protocol)是网络通信中的重要协议,用于在IP网络中传递错误消息和诊断信息。在Linux系统中,我们可以使用C/C++编程语言来实现基本的ICMP功能,例如发送ICMP回显请求(Ping)和解析ICMP消息。本文将带您深入了解C/C++实现的ICMP协议,包括套接字编程、构造ICMP报文、发送和接收ICMP消息等,以及提供实际的代码示例。
884 1
|
6月前
|
算法 Linux Shell
Linux C/C++ 开发(学习笔记三):Linux C编程案例
Linux C/C++ 开发(学习笔记三):Linux C编程案例
49 0