gcc --version是最直接可靠的查看方式,仅输出一行版本号,适合脚本解析;gcc -v则显示完整配置信息,利于调试。注意必须用--version(双短横),误写为-version或中文破折号会报错。

gcc --version 是最直接、最可靠的查看方式,输出简洁明确,适合脚本判断或快速确认。
用 gcc --version 还是 gcc -v?
gcc --version 只输出一行版本号(如 gcc (GCC) 11.4.0),适合自动化解析;gcc -v 会打印完整配置信息,包括目标架构、线程模型、内置头文件路径等,调试编译问题时更有用。
常见错误现象:误写成 gcc -version(少一个 -)或 gcc —version(用了中文长破折号),都会报错 gcc: error: unrecognized command-line option '-version'。
- 必须用两个短横线:
--version,不是-version -
gcc -v中的-v是单字母选项,不能写成--v - 如果系统里只有
g++没装gcc,g++ --version同样有效,二者版本通常一致
查不到命令时,先确认是不是真没装
执行 gcc --version 报 bash: gcc: command not found,不代表系统不支持编译,只是 GCC 套件未安装。
不同系统安装命令差异明显:
- CentOS/RHEL 7:
yum install -y gcc gcc-c++ - CentOS/RHEL 8+:
dnf install -y gcc gcc-c++ - Ubuntu/Debian:
apt update && apt install -y gcc g++
注意:gcc-c++(RHEL系)和 g++(Debian系)是必需的,否则 C++ 标准库链接会失败,即使 gcc --version 能运行,也编译不了 .cpp 文件。
系统有多个 GCC 版本怎么办
比如同时装了 gcc-9、gcc-11、gcc-13,gcc --version 只显示当前 PATH 中优先的那个。
要列出所有可用版本:
- 查可执行文件:
ls /usr/bin/gcc*(常见路径,也可能在/usr/local/bin/) - 查具体某版本:
gcc-11 --version、gcc-13 --version - 看软链接指向:
readlink -f $(which gcc)
切换默认版本不要硬改软链接,推荐用 alternatives --config gcc(RHEL/CentOS)或 update-alternatives --config gcc(Debian/Ubuntu),避免破坏包管理器状态。
最容易被忽略的是:某些容器镜像或最小化安装系统里,gcc 和 g++ 是分开打包的,只装一个会导致 C++ 编译失败,而错误提示往往藏在链接阶段,不是第一眼就能发现的。


















