在 Ubuntu 上“降低 GCC 版本”常见有 三种方式,从推荐到不推荐依次是:
一、使用 apt 安装旧版本(最推荐 ✅)
Ubuntu 官方源里通常带有多个 GCC 版本。
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 --config gcc
sudo update-alternatives --config g++
验证:
gcc --version
二、仅对某个项目指定低版本(不影响系统 ✅)
编译时显式指定:
gcc-9 main.c -o main
或 CMake:
export CC=gcc-9
export CXX=g++-9
cmake ..
三、从源码编译旧版 GCC(不推荐 ⚠️)
适合特殊需求,但很慢、容易出错。
简要步骤:
wget https://ftp.gnu.org/gnu/gcc/gcc-8.5.0/gcc-8.5.0.tar.gz
tar -xzf gcc-8.5.0.tar.gz
cd gcc-8.5.0
./contrib/download_prerequisites
mkdir build && cd build
../configure --prefix=/opt/gcc-8 --enable-languages=c,c++
make -j$(nproc)
sudo make install
常见问题
❓ Ubuntu 太新,没有旧 GCC?
可以加旧版本源(如 20.04 用 18.04 源),但不推荐。
❓ 只想临时用一次?
CC=gcc-9 make
如果你愿意,可以告诉我:
- Ubuntu 版本(
lsb_release -a) - 当前 GCC 版本
- 想降到哪个版本
我可以给你精确命令。