温馨提示×

debian gcc怎么选版本

小樊
46
2026-10-07 17:48:13
栏目: 智能运维

在 Debian 上“选 GCC 版本”通常有三种场景:系统已装多个 GCC 怎么切换、怎么安装不同版本、编译时怎么指定版本。下面按实用方式说明。


一、查看已安装的 GCC 版本

gcc --version
ls /usr/bin/gcc*

二、安装多个 GCC 版本(Debian)

1. 查看可安装版本

apt-cache search gcc | grep -E 'gcc-[0-9]'

常见:

  • Debian 11:gcc-9 / gcc-10
  • Debian 12:gcc-11 / gcc-12

2. 安装指定版本

sudo apt update
sudo apt install gcc-11 g++-11
sudo apt install gcc-12 g++-12

三、用 update-alternatives 切换默认 GCC(推荐)

1. 注册版本

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 --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 gcc
sudo update-alternatives --config g++

选数字即可。

3. 查看当前

gcc --version

四、不切换系统默认,编译时直接指定

gcc-11 main.c -o main
g++-12 main.cpp -o main

适合 CI、脚本、多版本并存场景。


五、CMake 里指定 GCC 版本

cmake -DCMAKE_C_COMPILER=gcc-11 \
      -DCMAKE_CXX_COMPILER=g++-11 ..

六、需要“很新”的 GCC(如 13/14)

Debian stable 可能没有:

  • 用 testing / sid 源(不推荐生产)
  • 或用 llvm / clang
  • 或自己编译 GCC(复杂)

七、常见坑

  • gcc 和 g++ 要分别设置
  • 内核模块编译对 GCC 版本敏感
  • 多版本共存 ≠ 自动兼容 ABI

如果你告诉我:

  • Debian 版本(cat /etc/os-release)
  • 想要 GCC 几
  • 是系统默认还是只编译用

我可以直接给你精确命令。

0 踩