Linux怎样更新Centos下Gcc版本支持C++17?

这篇具有很好参考价值的文章主要介绍了Linux怎样更新Centos下Gcc版本支持C++17?。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

[[Linux下的软连接、软链接的方式]]

[[Linux使用的filesystem库来自于c++17提供的新特性]]

[[Linux下centos查看 GCC 、G++版本]]

[[Linux 下centos 查看 -std 是否支持 C17 ]]


Centos7快速安装gcc8.3.1 可支持C++17(附gcc相关链接整理)

centos7直接yum安装的那个gcc版本为4.8.5,对于大多数的需求来说都是低了。系统安装镜像里的那个版本也是4.8.5。 在g++ 7 以上的版本中添加了对c++17 的支持,所以为了工作需要现在需要升级到高版本。

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++

可以查看一下版本看看了

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

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 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]$ 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]$ 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 ~]# 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=c++17已经可以识别出来了。


服务器高级架构体系:https://ke.qq.com/course/417774?flowToken=1010783文章来源地址https://www.toymoban.com/news/detail-630078.html

到了这里,关于Linux怎样更新Centos下Gcc版本支持C++17?的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Linux下Centos7 gcc/g++、动态库/静态库(动态/静态链接)

    gcc是对c语言代码进行编译链接,而g++是对c++代码进行编译链接,接下来我们只对gcc进行讲解,g++的使用方法跟gcc是一样的。 编译链接的四个步骤: 1:预处理 2:编译 3:汇编 4:链接 注:这些在后面都会着重讲解 我们先在Date.c 源文件里面写一些c语言代码,我们知道,c语言代码需

    2024年02月05日
    浏览(48)
  • Linux系统【Centos7】更新内核更新软件详细教程

    更新内核: 1. 打开终端,输入命令 sudo yum update,等待更新完成。 2. 重启系统,输入命令 sudo reboot。 3. 在 GRUB 引导界面,选择最新的内核版本,按下回车键进入系统。 4. 在终端中输入命令 uname -r,查看当前使用的内核版本是否更新成功。 更新软件: 1. 打开终端,输入命令

    2024年02月09日
    浏览(71)
  • Linux 下centos 查看 -std 是否支持 C17

    实际工作中,可能会遇到c++的一些高级特性,例如std::invoke,此函数是c++17才引入的,如何判断当前的gcc是否支持c++17呢,这里提供两种办法。 1.根据gcc的版本号来推断 gcc --version,可以查看版本号,笔者的电脑,gcc的版本号是8.3.0,然后查看8.3.0是什么时候发布的,查出是201

    2024年02月15日
    浏览(62)
  • Linux CentOS7中yum的使用&&更新yum源

    我们在windows中我们是经常需要下载一些我们需要的软件,那么我们在Linux中理所当然也是需要的,那么我们如何安装软件呢?? 1.源代码安装:源代码安装就是直接自己安装源代码,并且是自己找源码,自己设置代码依赖关系,所以这个源代码安装并不是我们使用的 2.rpm安装

    2024年02月06日
    浏览(46)
  • Linux Centos7安装更新GPU driver驱动和cuda:

    目录 1. 查看显卡版本命令: 2. 更新驱动: 2.1 下载显卡驱动 2.2 安装前配置 2.3 安装显卡驱动 3. 下载更换cuda版本: 3.1 下载cuda: 3.2 安装过程中遇到一些选项,同意协议accept 3.3 vi ~/.bashrc末端加上配置信息 参考连接: nvidia-smi:GPU驱动版本,driverAPI(支持的最高cuda版本)。

    2024年02月15日
    浏览(46)
  • Docker 安装:在linux系统CentOS7 版本 安装Docker

    目录 一,Docker介绍: 1.1Docker是什么? 1.2Docker组成 二,Docker安装: 三,Docker基本使用 3.1服务 3.2镜像 3.3容器                                   🎉🎉欢迎来到我的CSDN主页!🎉🎉                         🏅我是平顶山大师,一个在CSDN分享笔记的博主。📚

    2024年01月18日
    浏览(47)
  • Kafka3.0.0版本——集群部署(linux环境-centos7)

    三台服务器 服务器名称 服务器ip centos7虚拟机1 192.168.136.27 centos7虚拟机2 192.168.136.28 centos7虚拟机3 192.168.136.29 Zookeeper集群安装参考此博文链接:https://wwwxz.blog.csdn.net/article/details/129280956?spm=1001.2014.3001.5502 3.1、官网下载地址 官网下载地址:http://kafka.apache.org/downloads.html 3.2、下载

    2024年02月04日
    浏览(42)
  • Elasticsearch7.8.0版本入门——单机部署(linux环境-centos7)

    1.1、下载地址 下载地址:https://www.elastic.co/cn/downloads/past-releases#elasticsearch 1.2、下载步骤 下载步骤如下所示: linux环境(centos7)安装JDK11步骤图解参考此博文:https://wwwxz.blog.csdn.net/article/details/128899399?spm=1001.2014.3001.5502 上传安装包到home目录下 opt目录下创建es文件夹 进入home目

    2024年02月06日
    浏览(51)
  • centos7使用yum安装gcc8

    cenots7自带的gcc版本为4.8.5,不方便编译一些软件,需要将gcc升级。升级gcc可以通过源码编译安装,也可以通过yum等软件管理工具来进行安装,本文介绍通过yum软件来安装gcc。 2.1 安装scl源 2.2 列出scl可用源下所有可用版本 2.3 安装指定版本的gcc工具链 2.4 使用指定版本的gcc

    2024年02月13日
    浏览(44)
  • CentOS7离线安装gcc和gcc-c++(亲测成功)

    1.点击下载安装包(下载下来的是gz文件,在linux环境下解压) 提取码:1111 2.进入gcc_rpm目录,执行安装命令 3.验证gcc是否安装成功 安装gcc-c 1.进入 gcc-c++ 文件件目录下 2.执行安装命令 3.验证g++是否安装成功 安装过程走完了过后,前往 /usr/bin 目录查看是否有 gcc和g++两个文件夹,

    2024年02月09日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包