温馨提示×

linux c++配置怎么选版本

小樊
45
2026-10-08 00:01:20
栏目: 编程语言

在 Linux 下做 C++ 开发时“选版本”,通常包含 三层含义。下面按最常见场景给你梳理一下,并给出具体配置方法。


一、选择 C++ 标准版本(C++11 / 14 / 17 / 20 / 23)

这是最常用的“选版本”。

1️⃣ GCC / G++ 指定 C++ 标准

g++ -std=c++17 main.cpp -o main

常见选项:

-std=c++11
-std=c++14
-std=c++17
-std=c++20
-std=c++23   # 较新 GCC 支持

✅ 推荐:

  • 新项目:C++17
  • 研究/新特性:C++20

2️⃣ CMake 中指定 C++ 版本

set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)

完整示例:

cmake_minimum_required(VERSION 3.10)
project(demo)

set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)

add_executable(demo main.cpp)

二、选择编译器版本(GCC / Clang)

很多时候你不是选“C++标准”,而是选编译器版本。

1️⃣ 查看已安装编译器

gcc --version
g++ --version
clang --version

2️⃣ 安装多个 GCC 版本(Ubuntu 示例)

sudo apt install gcc-9 g++-9
sudo apt install gcc-11 g++-11

3️⃣ 切换默认 GCC 版本

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

sudo update-alternatives --config gcc
sudo update-alternatives --config g++

三、选择第三方库版本(如 Boost / OpenCV)

方式 1:系统包管理器

sudo apt install libboost-dev

方式 2:指定路径(推荐进阶)

cmake -DCMAKE_PREFIX_PATH=/opt/boost_1_82_0 ..

或在 CMake 中:

find_package(Boost 1.82 REQUIRED)

四、常见组合推荐 ✅

场景 推荐配置
普通 Linux 开发 GCC 11 + C++17
高性能计算 GCC 12 + C++20
嵌入式 GCC 9 + C++14
新项目 Clang + C++20

五、常见问题

❓ 编译器太老不支持 C++20?

升级 GCC:

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

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

  • ✅ 你用的 Linux 发行版
  • ✅ 是 命令行 / CMake / VSCode / CLion
  • ✅ 想用 C++ 哪个版本

我可以直接给你一套可复制的配置方案。

0 踩