在 Ubuntu 上“配置 C++ 版本”通常有以下几种常见场景,我按最常见到高级的方式给你说明。
g++ --version
gcc --version
如果安装了 clang:
clang++ --version
sudo apt update
sudo apt install gcc-9 g++-9
sudo apt install gcc-11 g++-11
sudo apt install gcc-12 g++-12
update-alternatives 切换默认 C++ 版本(推荐)sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-9 90
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
(数字越大,优先级越高)
sudo update-alternatives --config g++
输出示例:
* 0 /usr/bin/g++-12
1 /usr/bin/g++-9
2 /usr/bin/g++-11
选择对应编号即可。
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
cmake -DCMAKE_CXX_COMPILER=g++-11 ..
或在 CMakeLists.txt:
set(CMAKE_CXX_COMPILER "g++-11")
g++-11 -std=c++17 main.cpp -o main
sudo apt install clang
clang++ --version
切换:
sudo update-alternatives --install /usr/bin/c++ c++ /usr/bin/clang++ 100
which g++
g++ --version
→ 添加 PPA(如 ubuntu-toolchain-r/test):
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt update
g++-12 main.cpp
如果你能告诉我:
我可以给你更精确的一步到位配置方案。