安装环境为:win11 系统 -> virtualbox 虚拟机 -> centos7.9 系统 -> C++11
测试时间为:2023 年 04 月

默认安装旧版本 C++

在 CentOS7 上,可以使用 yum 包管理器来安装 C++11 的开发工具和库。具体步骤如下:

  1. 更新系统软件包到最新版本:
sudo yum update
  1. 安装 C++11 开发工具和库:
sudo yum install gcc-c++ -y
sudo yum install libstdc++-devel -y

以上命令会安装GNU C++编译器和标准C++库的开发文件,包括头文件和库文件。其中,gcc-c++是C++编译器,libstdc+±devel是标准C++库的开发文件。

  1. 检查安装是否成功:
    可以通过以下命令检查安装是否成功:
g++ --version

该命令会显示C++编译器的版本信息,则说明安装成功。

  1. 写个 hello world 看可不可以跑:
#include <iostream>
using namespace std;

int main()
{
    cout << "Hello World!" << endl;
    return 0;
}

文件命名为 hello.cpp,在命令行中执行:

g++ -o demo hello.cpp
./demo

输出结果为 hello world! 即安装成功。

更新最新版本的 C++

CentOS7 默认安装的是 GCC 4.8.5,这个版本的GCC不支持完整的 C++11 标准。

如果您需要使用 C++11 标准的特性,则需要安装新版本的 GCC。

  1. 安装 centos-release-scl:
sudo yum install centos-release-scl
  1. 安装 devtoolset,11 为版本号:
sudo yum install devtoolset-11-gcc*
  1. 临时激活对应的 devtoolset,11为版本号:
scl enable devtoolset-11 bash
  1. 永久激活软链接:
mv /usr/bin/gcc /usr/bin/gcc-4.8.5
ln -s /opt/rh/devtoolset-11/root/bin/gcc /usr/bin/gcc
mv /usr/bin/g++ /usr/bin/g++-4.8.5
ln -s /opt/rh/devtoolset-11/root/bin/g++ /usr/bin/g++
  1. 测试版本是否正确:
gcc --version
g++ --version

可以看到,输出结果为:

gcc (GCC) 11.2.1 20220127 (Red Hat 11.2.1-9)
g++ (GCC) 11.2.1 20220127 (Red Hat 11.2.1-9)

成功更新!!!

VSCODE 注意事项

  • 在 VSCODE 环境中使用时,编译器有时不能找到 G++ 所处的位置,需要我们手动导入。
  • 报错情况一般为 #include <stdlib.h> 等头文件下方出现波浪线。

解决方法:

点击 ctrl+shift+p -> C/C++ configurations (UI) -> compiler path 处填入:

/usr/bin/g++

即可解决该问题。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐