温馨提示×

ubuntu c++如何升级版本

小樊
37
2026-08-01 21:27:52
栏目: 编程语言

在 Ubuntu 上升级 C++ 编译器(通常是 g++)版本,常见做法如下。按你使用的 Ubuntu 版本和想要升级到的 C++ 标准(如 C++11 / 17 / 20 / 23)来选择。


一、查看当前 g++ 版本

g++ --version

二、使用 apt 升级(最简单,推荐)

1️⃣ 更新软件源

sudo apt update
sudo apt upgrade

2️⃣ 安装或升级 g++

sudo apt install g++

这会安装 Ubuntu 仓库中默认版本


三、安装指定版本的 g++(常见需求)

查看可用版本

apt-cache search g++

安装指定版本(示例)

sudo apt install g++-12

常见版本对应:

Ubuntu 版本 默认 g++
20.04 g+±9
22.04 g+±11
24.04 g+±13

四、使用 update-alternatives 切换版本(多版本共存)

1️⃣ 注册多个版本

sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-11 110
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-12 120

2️⃣ 切换版本

sudo update-alternatives --config g++

选择对应编号即可。


五、Ubuntu 版本太旧,使用 Toolchain PPA(强烈推荐)

1️⃣ 添加 PPA

sudo apt install software-properties-common
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt update

2️⃣ 安装新版 g++

sudo apt install g++-13

六、验证 C++ 标准支持

编译时指定标准

g++-13 -std=c++20 main.cpp -o main

支持情况:

g++ 版本 C++ 标准
9 C++17
11 C++20
12+ C++20/23

七、只想升级 C++ 标准(不升级编译器不可行)

⚠️ C++ 标准由编译器决定,不能单独升级标准。


八、如果使用的是 Clang

sudo apt install clang
clang++ --version

九、常见问题

❓ 编译报错:‘std::xxx’ is not a member of ‘std’

✅ 原因:编译器太旧
✅ 解决:升级 g++

❓ 是否需要升级 Ubuntu?

不一定,用 PPA 即可。


十、推荐组合(2025)

场景 推荐
Ubuntu 22.04 g+±12 / g+±13
C++20 g+±11+
C++23 g+±13+

如果你愿意,可以告诉我:

  • ✅ Ubuntu 版本
  • ✅ 当前 g++ 版本
  • ✅ 想用 C++17 / 20 / 23

我可以给你精确的一条龙命令

0