温馨提示×

ubuntu gcc如何降版本

小樊
47
2026-10-04 01:51:12
栏目: 智能运维

在 Ubuntu 上“降低 GCC 版本”通常有几种常见做法,下面按最推荐 → 最灵活的顺序说明。


一、使用 Ubuntu 官方仓库中已有的低版本(推荐)

Ubuntu 很多版本仓库里自带多个 GCC,例如 gcc-9、gcc-10、gcc-11 等。

1. 查看可安装版本

apt-cache search gcc | grep ^gcc-

或

ls /usr/bin/gcc*

2. 安装指定版本

例如安装 gcc-9:

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

3. 使用 update-alternatives 切换版本(推荐)

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 90
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-9 90

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++

验证:

gcc --version

✅ 优点:安全、可随时切换
❌ 缺点:受 Ubuntu 版本限制


二、临时使用某个 GCC 版本(不改系统)

编译时直接指定:

gcc-9 main.c -o main

或 CMake:

CC=gcc-9 CXX=g++-9 cmake ..

适合一次性编译。


三、通过 PPA 安装更老版本(如 gcc-7 / gcc-8)

以 ubuntu-toolchain-r/test 为例:

sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt update
sudo apt install gcc-7 g++-7

⚠️ 注意:

  • 老版本可能不支持新 Ubuntu(如 22.04 / 24.04)
  • 可能有依赖问题

四、从源码编译(不推荐,除非必须)

适合:

  • 需要非常老的 GCC
  • 嵌入式 / 特殊平台

流程简述:

wget https://ftp.gnu.org/gnu/gcc/gcc-7.5.0/gcc-7.5.0.tar.gz
tar -xzf gcc-7.5.0.tar.gz
cd gcc-7.5.0
./contrib/download_prerequisites
mkdir build && cd build
../configure --prefix=/opt/gcc-7 --enable-languages=c,c++
make -j$(nproc)
sudo make install

然后用:

/opt/gcc-7/bin/gcc

五、常见坑提醒

  • 不要直接删系统 gcc(apt / dpkg 可能依赖)
  • 内核、驱动编译通常用系统默认 gcc
  • CUDA / 驱动对 gcc 版本有要求,注意兼容

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

  • Ubuntu 版本(lsb_release -a)
  • 当前 gcc 版本
  • 想降到哪个版本、为什么(编译旧项目?驱动?)

我可以给你最合适的精确命令。

0 踩