在 Ubuntu 上“换 C++ 版本”,通常说的是切换 g++ / gcc 的版本(因为 C++ 标准由编译器支持)。下面按常见场景给你说明。
g++ --version
gcc --version
例如安装 g+±9、g+±11、g+±12:
sudo apt update
sudo apt install g++-9 g++-11 g++-12
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++
# 同样建议切换 gcc
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 90
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-11 110
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 120
sudo update-alternatives --config gcc
g++-11 main.cpp -o main
或在 CMake 中指定:
cmake -DCMAKE_CXX_COMPILER=g++-11 ..
有时你只是想用 C++17 / C++20:
g++ main.cpp -std=c++17 -o main
g++ main.cpp -std=c++20 -o main
如果你能告诉我:
我可以给你更精确的配置方法。