gcc --version 和软件包版本不一样

gcc --version 和软件包版本不一样

当我在终端中输入以下命令时:

gcc --version

它的输出类似如下内容:

gcc (Ubuntu 6.5.0-2ubuntu1~18.04) 6.5.0 20181026
...

但是当我输入以下命令来查看已安装的 gcc 包的版本时:

apt-cache show gcc | grep Version

我看到的是:

Version: 4:7.4.0-1ubuntu2.2
Version: 4:7.3.0-3ubuntu2.1
Version: 4:7.3.0-3ubuntu2

这正常吗?

需要 gcc 的软件使用哪个版本?

答案1

您的 Ubuntu(18.04、18.10 或 19.04)上安装了 gcc,以及 gcc-6 和可能的其他 gcc 版本。虽然安装了 gcc,但 gcc-6 目前是 gcc 的默认版本。要显示您的操作系统上安装的所有 gcc 版本,请运行以下命令:

apt policy gcc gcc-5 gcc-6 gcc-7 gcc-8 gcc-9     

从上述命令的结果可以看出,Ubuntu 默认存储库中有多个不同的 gcc 替代版本,并且可以同时安装多个版本的 gcc。如果安装了多个版本,您可以按照中的说明选择使用哪个版本的 gcc如何使用 gcc 的多个实例?

答案2

/usr/bin/gccgcc通常是一个符号链接,它通常指向系统的默认当前版本- 在你的情况下似乎是gcc-7.4.0

如果链接指向不同的版本,那可能是因为它已使用ln或通过update-alternatives系统手动链接。

软件在运行时并不“需要” gcc- 因此它只会影响从源代码构建软件时所使用的编译器版本。

相关内容