在 Debian 系统中配置 GCC(GNU Compiler Collection)主要涉及安装、切换版本、设置环境变量和交叉编译工具链。下面按常见场景详细说明。
sudo apt update
通常安装 build-essential(包含 gcc、g++、make 等):
sudo apt install build-essential
查看版本:
gcc --version
g++ --version
例如同时安装 GCC 11 和 GCC 12:
sudo apt install gcc-11 g++-11
sudo apt install gcc-12 g++-12
update-alternatives 管理版本sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-11 11
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 12
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-11 11
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-12 12
sudo update-alternatives --config gcc
sudo update-alternatives --config g++
export CC=gcc-12
export CXX=g++-12
写入 ~/.bashrc:
echo 'export CC=gcc-12' >> ~/.bashrc
echo 'export CXX=g++-12' >> ~/.bashrc
source ~/.bashrc
gcc -Wall -Wextra -O2 -o hello hello.c
gcc -std=c11 main.c
gcc -std=c17 main.c
g++ -std=c++17 main.cpp
sudo apt install gcc-arm-linux-gnueabihf
arm-linux-gnueabihf-gcc main.c -o main
gcc -v
gcc -print-search-dirs
sudo apt install gcc
使用 update-alternatives 管理优先级,避免直接覆盖 /usr/bin/gcc
| Debian 版本 | 默认 GCC |
|---|---|
| Debian 11 | GCC 10 |
| Debian 12 | GCC 12 |
如果你有具体需求(如:内核编译、嵌入式、C++20、交叉编译、旧项目兼容),可以告诉我,我可以给你更精确的配置方案。