您的位置:首页 >CentOS C++编译器如何更新配置
发布于2026-04-25 阅读(0)
扫一扫,手机访问

动手升级前,先摸清家底。这就像医生开药方前总得先问诊,搞清楚当前编译器的“健康状况”是第一步。
gcc --version 和 g++ --version,看看系统默认的编译器是哪一代。which gcc 和 which g++ 确认一下它们到底藏在哪个目录下。sudo yum install -y gcc gcc-c++ libstdc++-devel。这里有个关键信息:如果你用的是 CentOS 7,那么自带的 GCC 版本多半是 4.8.5。这个版本对现代 C++ 标准(比如 C++11/14/17)的支持是“心有余而力不足”,很多新特性用不了。因此,通过 SCL 或 Devtoolset 来升级,是更稳妥的选择。
至于 CentOS 8 的用户,需要提醒一下,官方支持已经结束。从长远维护的角度看,建议考虑迁移到 CentOS Stream 或其他受支持的发行版。
这是最省心、最安全的方法,尤其适合生产环境。它的核心思想是“并存而不替换”,让新旧版本和平共处,按需切换。
sudo yum install -y centos-release-scl。sudo yum install -y devtoolset-11-gcc devtoolset-11-gcc-c++。scl enable devtoolset-11 bash。这个新环境只在当前终端窗口有效,关了就没。gcc --version 和 g++ --version,确认版本号已经更新。echo “source /opt/rh/devtoolset-11/enable” >> ~/.bash_profile。source ~/.bash_profile。SCL 的妙处就在这里。你可以同时安装 devtoolset-9、devtoolset-11 等多个版本。需要哪个,就在 ~/.bash_profile 里修改对应的 source 行,或者临时用 scl enable 命令切换,灵活自如。
如果你需要最新的、或者 SCL 仓库里没有的特定 GCC 版本,或者就是想体验从源码构建的完整过程,那么可以走这条路。不过,这需要更多的时间和系统资源。
sudo yum install -y gmp-devel mpfr-devel libmpc-devel。wget https://mirrors.cloud.tencent.com/gnu/gcc/gcc-11.2.0/gcc-11.2.0.tar.gz。tar -xf gcc-11.2.0.tar.gz && cd gcc-11.2.0。mkdir -p build && cd build。../configure --prefix=/usr/local/gcc-11.2.0 --enable-languages=c,c++。-j$(nproc) 调用所有 CPU 核心加速:make -j$(nproc)。这一步最耗时,可以去喝杯咖啡。sudo make install。echo ‘export PATH=/usr/local/gcc-11.2.0/bin:$PATH’ >> ~/.bashrc。source ~/.bashrc 让改动生效。最后,用 gcc --version 和 g++ --version 确认一下,是不是已经成功切换到了自己亲手编译的版本。
升级完了,事情还没结束。要让新编译器真正“听话”,还得做好后续配置。
-std=c++17:g++ -std=c++17 -O2 -g hello.cpp -o hello。这能确保编译器启用对应的语言特性。/usr/bin/gcc。sudo mv /usr/bin/gcc /usr/bin/gcc-4.8.5sudo ln -s /opt/rh/devtoolset-11/root/usr/bin/gcc /usr/bin/gccg++ 执行相同操作。需要警惕的是,这种操作在生产环境有潜在风险,动手前请务必评估对现有服务的影响。
libstdc++-devel 包,它提供了 C++ 标准库的头文件和链接库,没有它很多程序编译会失败。/usr/bin/g++(或者你实际安装的新路径),问题往往就迎刃而解了。
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
9