2013-12-19 71 views
2

我想在32位和64位安装上安装Linux Mint 16'petra'。autoconf在Linux上抱怨“C编译器无法创建可执行文件”Mint

我的电脑上没有网络连接,所以必须手动安装所有附加软件。正在我想我会尝试与wxWidgets的安装代码块一个开发人员,所以随后在发现的说明:

http://wiki.codeblocks.org/index.php?ti

为了执行它出现了,我需要在 预先找到requistites所以下面的说明安装https://developer.gnome.org/gtk3/stable ... lding.html 下载了glib'stuff',解包并运行configure。

在这一点上,事情失败了。

gcc version 4.8.1 (Ubuntu/Linaro 4.8.1-10ubuntu8) 
configure:4072: $? = 0 
configure:4061: gcc -V >&5 
gcc: error: unrecognized command line option '-V' 
gcc: fatal error: no input files 
compilation terminated. 
configure:4072: $? = 4 
configure:4061: gcc -qversion >&5 
gcc: error: unrecognized command line option '-qversion' 
gcc: fatal error: no input files 
compilation terminated. 

如何诊断这些错误:我在终端,指出C compiler cannot create executablessee config.log for more details包含(除其他东西)如下得到的消息?

+2

这简直就是GNU autoconf探测你编译器的版本。 GCC不能创建可执行文件通常意味着你没有安装'Glibc'的开发头文件,即'/ usr/include'中几乎没有任何内容。 –

+0

嗨Hristo,感谢您抽出时间发表评论。有什么进一步的指导可以让我知道我需要做什么?我是否只搜索开发者头文件并尝试安装它们?真的不熟悉linux,请原谅我的理解不足。 – user3118566

+0

从未使用过Mint,但是在Ubuntu中(而afaik Mint是从Ubuntu派生的),这个软件包被称为'libc6-dev'。不过你也可能需要其他的开发头文件。 –

回答

4

在某些版本的gcc上,-V选项告诉它使用指定版本的编译器 - 但它需要一个参数。它记录在here。该选项在4.5.4和4.6.4之间似乎已被删除了一段时间。

但是,像这样的配置脚本有望做不起作用的事情,因此它可以确定它使用的编译器以及它支持的功能。看来在这一点上脚本并没有假设它所调用的编译器是gcc;相反,它正在尝试许多不同的选项来让编译器报告自己的版本号。

我认为错误消息你已经告诉我们:

gcc: error: unrecognized command line option '-V' 

不涉及您遇到的问题。

您需要关注紧接错误消息之前的日志部分,该部分说C编译器“无法生成可执行文件”。

我想尝试的第一件事是编译并执行一个简单的“hello,world”程序。如果这不起作用,那么你错过了一些东西,而你的编译器真的不起作用。如果它确实起作用,那么您需要研究config.log文件以查看真正导致错误的是什么。

我有时会破解configure脚本来打印更多信息来追踪这样的问题。例如,它会生成并编译一个小C程序;您可以添加代码以保存该C程序的副本并单独检查它。

0

我的情况与此相似。如果我直接从shell运行它们,configure和其他命令可以正常工作。我的情况是不同的。我从另一个Makefile运行了./configure && make,并设置了CFLAGS变量。这产生了像你一样的错误。这是因为CFLAGS变量。它影响configure的工作方式。运行./configure --help列出了一些影响它的内容。也许你应该检查是否有这些设置。

0

我遇到了这个错误,因为我的Linux发行版没有提供编译C程序所需的所有东西。 build-essentials元包给了我我需要的一切。

sudo apt-get install build-essential 
相关问题