You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Ubuntu Linux上重新安装gcc和g++并配置CodeBlocks使用该版本

你遇到的报错不是gcc/g++安装有问题,是你的编译命令写错了:
你用的命令是

g++ randomCodeWhileReading.cpp -o -std=c++20

其中-o参数的作用是指定输出的可执行文件名,你把-std=c++20放在-o之后,等于告诉编译器输出文件名叫-std=c++20,根本没有成功开启C20编译标准。而std::numbers是C20才引入的特性,g11默认不开启C20支持,自然识别不了相关语法。

你可以先执行正确的编译命令验证:

# 省略输出文件名,默认输出a.out(Linux)/a.exe(Windows)
g++ randomCodeWhileReading.cpp -std=c++20
# 或者指定输出文件名
g++ randomCodeWhileReading.cpp -std=c++20 -o test_pi

你的代码本身没有语法问题,用上面的命令就能正常编译运行,不需要重装gcc。


如果确实需要完全重装gcc/g++,可以参考对应系统的操作:

  • Debian/Ubuntu系列Linux:
    • 卸载原有版本:sudo apt remove --purge gcc g++
    • 清理残留文件:sudo apt autoremove && sudo apt autoclean
    • 安装最新版:sudo apt update && sudo apt install gcc g++
    • 如果要安装指定版本,比如gcc 11,将安装命令改为sudo apt install gcc-11 g++-11即可
  • Windows MinGW环境:
    • 直接删除原有MinGW安装目录,清空环境变量PATH中旧MinGW的bin路径
    • 下载新的MinGW-w64压缩包,解压到无中文、无空格的路径下(比如C:\mingw64)
    • 将新路径下的bin目录添加到系统环境变量PATH中

要让CodeBlocks使用新装的gcc版本,操作如下:

  1. 打开CodeBlocks,点击顶部菜单「设置」→「编译器」
  2. 在弹出的窗口左侧选择「全局编译器设置」,选中「GNU GCC Compiler」
  3. 切换到「工具链可执行文件」选项卡,将编译器的安装目录改为你新装gcc的根目录,下方的gcc、g++、gdb等程序路径会自动匹配,也可以手动逐一选择对应文件
  4. 切换到「编译器设置」→「编译器标志」选项卡,找到「遵循C20 ISO C语言标准 [-std=c20]」的选项,勾选后保存设置,之后编译会默认开启C20支持

内容的提问来源于stack exchange,提问作者ExZerminator

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 05:57:03