在 Ubuntu 上切换 gcc 版本,常见有 update-alternatives(推荐)、直接指定路径 和 多版本共存手动切换 几种方式。下面按使用频率说明。
update-alternatives(最推荐)sudo apt update
sudo apt install gcc-9 gcc-10 gcc-11
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 90
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 100
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-11 110
(数字越大,默认优先级越高)
sudo update-alternatives --config gcc
输出示例:
There are 3 choices for the alternative gcc...
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/bin/gcc-11 110 auto mode
1 /usr/bin/gcc-9 90 manual mode
2 /usr/bin/gcc-10 100 manual mode
3 /usr/bin/gcc-11 110 manual mode
Press <enter> to keep the current choice[*], or type selection number:
输入对应数字即可。
gcc --version
如果你用 C++,也要切换 g++:
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-9 90
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-10 100
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-11 110
sudo update-alternatives --config g++
gcc-10 main.c -o main
或
CC=gcc-9 ./configure
make CC=gcc-9
ls /usr/bin/gcc*
gcc --version
sudo update-alternatives --auto gcc
sudo update-alternatives --auto g++
如果你愿意,可以告诉我:
我可以给你更精确的命令。