问题
autogen.sh failed, the output shows that i need an autoconf of higher version. but in fact i have a 2.6x autoconf....
why it still failed?
[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
// content in configure:4
it's 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, but autogen failed, it's really confusing:(
[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.
more details:
autoreconf --version
autoreconf (GNU Autoconf) 2.59
what i want to know is why autogen.sh failed?
回答1:
You have two versions of autoconf installed, and when aclocal
runs autom4te
, this launches the old one. Do you have a autom4te-2.6x
in your path? If so, set export AUTOM4TE=autom4te2.6x
before running autoreconf-2.64
.
Or just run:
AUTOM4TE=autom4te2.6x ./autogen.sh
See also:
update autoconf to at least 2.6
why i failed to build autoconf with autoconf2.6x, its version is newer than 2.6 anyhow
来源:https://stackoverflow.com/questions/12136934/why-autogen-sh-failed-even-with-the-correct-autoconf