autogen.sh失败,输出显示我需要更高版本的autoconf。但实际上我有一个2.6x autoconf ....

为什么它仍然失败?

[mirror@home 4]$ ./autogen.sh
+ autoreconf -i -f -v
autoreconf: Entering directory `.'
autoreconf: configure.in: not using Gettext
autoreconf: running: aclocal --force -I m4
configure.in:4: error: Autoconf version 2.60 or higher is required
configure.in:4: the top level
autom4te: /usr/bin/m4 failed with exit status: 63
aclocal: autom4te failed with exit status: 63
autoreconf: aclocal failed with exit status: 63


//内容在configure:4中
这是AC_PREREQ(2.60)

[mirror@home 4]$ autoconf
autoconf      autoconf2.59  autoconf2.6x
[mirror@home 4]$ autoconf
[mirror@home 4]$ ls -l autocon
[mirror@home 4]$ ls /usr/bin/autoconf* -l
lrwxrwxrwx 1 root root    12 Aug 27 13:55 /usr/bin/autoconf -> autoconf2.6x
-rwxr-xr-x 1 root root  7663 Jan  6  2007 /usr/bin/autoconf2.59
-rwxr-xr-x 1 root root 14635 Feb  3  2011 /usr/bin/autoconf2.6x


2.63> 2.60,但是autogen失败了,这确实令人困惑:(

[mirror@home 4]$ autoconf --version
autoconf (GNU Autoconf) 2.63
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv2+: GNU GPL version 2 or later
<http://gnu.org/licenses/old-licenses/gpl-2.0.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Written by David J. MacKenzie and Akim Demaille.


更多细节:

    autoreconf --version
    autoreconf (GNU Autoconf) 2.59


我想知道的是为什么autogen.sh失败?

最佳答案

您安装了两个版本的autoconf,并且当aclocal运行autom4te时,这将启动旧版本。您的路径中是否有autom4te-2.6x?如果是这样,请在运行export AUTOM4TE=autom4te2.6x之前设置autoreconf-2.64

或者只是运行:

AUTOM4TE=autom4te2.6x ./autogen.sh


也可以看看:

update autoconf to at least 2.6

why i failed to build autoconf with autoconf2.6x, its version is newer than 2.6 anyhow

关于centos - 为什么即使使用正确的autoconf,autogen.sh也会失败?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12136934/

10-16 19:17