Ubuntu 10.10 上使用的是哪个 gcc

问题描述 投票:0回答:3

我从命令行在我的

gcc
上安装了最新版本的
linux-x86
/usr/bin/
显示两个
gcc
,即
gcc
gcc-4.4
。浏览了几个网站后,我导航到我的
/usr/lib/gcc/i686-linux-gnu
。它包含一个文件夹
4.4/
和另外两个文件
4.4.4
以及
4.4.5

当我使用

gcc -v
时,我得到

gcc 版本 4.4.5 (Ubuntu/Linaro 4.4.4-14ubuntu5.1)

whereis gcc
显示

gcc:/ usr / bin / gcc / usr / lib / gcc

gcc 显示

/usr/bin/gcc

我在

/usr/bin/
中找到的两个gcc有什么区别?系统正在挑选哪一个?

whereis gcc 和which gcc 的输出有什么区别?

我相信如果我理解这些,我将能够调试我的构建中的错误。

ubuntu unix gcc x86
3个回答
0
投票

“/usr/bin/gcc”中的二进制文件可能只是一个别名。由于“which gcc”指向该 gcc,请按照该别名查找您的默认系统 gcc,如果我不得不猜测的话,它被设置为 gcc“4.4.5”。 4.4/文件夹里有什么?

另外,我的猜测是 gcc-4.4 是另一个别名,可能是 4.4.4 或 4.4/ 文件夹中的 bin。这些只是猜测,所以我解决这个问题的第一步是跟随它们并看看它们指向哪里。


0
投票

我认为系统会选择回复

gcc -v
的版本。 也许您安装了多个 GCC 版本?或者您已经编译了一个需要使用特定 GCC 版本的软件?这可能是因为某些构建配置引用特定的 GCC 名称版本或使用 GCC 版本的指令细节,就像某些 Java 软件对 Java 虚拟机所做的那样。 Java 软件通常会安装其 JVM,而不管您是否已经安装了 JVM。

来自 http://www.linfo.org/whereis.html:

whereis 命令用于定位任何指定程序的二进制文件、源代码和在线手册页。

来自 http://linux.about.com/library/cmd/blcmdl1_which.htm

which - 显示(shell)命令的完整路径(即可执行文件)。


0
投票

是的,它肯定会显示两个 gcc。你要做的是通过命令行安装gcc后,你必须链接它。例如,对于 c 首先,您必须删除 cc1,然后使用绝对路径链接新的 cc1。如需更多参考,请访问此链接
http://buildall.wordpress.com/2011/04/20/installing-gcc-4-6-in-the-ubuntu-10-10/

© www.soinside.com 2019 - 2024. All rights reserved.