I tried to compile a program from source ( CVS build of knights ) when I came up with an error regarding autoconf not finding some file in /var/tmp/portage/autoconf-2.57/work... and some directories in there. I then did a grep for 'var/tmp/portage' in the autoconf libraries and came up with following results: computa root # grep -lr 'var/tmp/portage' /usr/share/autoconf/* /usr/share/autoconf/autoconf/autoconf.m4f /usr/share/autoconf/autotest/autotest.m4f /usr/share/autoconf/m4sugar/m4sugar.m4f /usr/share/autoconf/m4sugar/m4sh.m4f There are a lot of matches. Remerging 2.54 came up with exactly the same results ( except that directory was called autoconf-2.54 ). I think when autoconf merges it somehow parses its files and hard codes install paths.
try this export WANT_AUTOCONF_2_5=1
The variable is not the problem. Autoconf 2.13 works just fine, but some applications complain about needing version 2.5 ( for example most KDE apps ). The problem is that autoconf 2.5x doesn't install properly.
this is the way we choose the version in ebuilds setting 2_5="1" enables to use 2.5x
Yes, I know. Still, this is not the problem. The problem is that some files in the merged autoconf 2.5x point to /var/tmp/portage/autoconf..... instead of /usr/share/autoconf
Can you add a log with the errors you get ? Thing is, that when it creats the frozen m4 macro's, It hardcode the paths of the source macro's used. Thus in theory, even if you install directly to /, you will still get 'invalid' paths in there. I have used autoconf-2.5 a lot for patches that need Makefile.in's regenerated, and have not yet have any problems ...
For example: knights $ export WANT_AUTOCONF_2_5=1 knights $ make -f Makefile.dist This Makefile is only for the CVS repository This will be deleted before making the distribution *** Creating acinclude.m4 !!! If you get recursion errors from autoconf, it is advisable to set the environment variable M4 to something including "--nesting-limit=500" *** Creating list of subdirectories *** Creating configure.in *** Creating aclocal.m4 *** Creating configure configure.in:73: error: m4_popdef: undefined macro: AC_Dest /var/tmp/portage/autoconf-2.57/work/autoconf-2.57/lib/autoconf/status.m4:844: AC_CONFIG_FILES is expanded from... configure.in:73: the top level autom4te-2.57: /usr/bin/m4 failed with exit status: 1 make[1]: *** [cvs] Error 1 make: *** [all] Error 2
*** This bug has been marked as a duplicate of 14453 ***
Martin, you sure this is a dup ?
I am fairly sure it is not. The other bug is about an error in the wrapper script. This one is about insorrect installation of autoconf libraries.
Ill repeat again: .m4f files are 'frozen' .m4 macro's, meaning that they are a merge of all needed .m4 macro's. The embedded path's are just the names of the source macro's. Even if you install it without portage, its still going to contain the paths to the dir from where you did the 'make && make install'. Something else must be misbehaving here. Can you up a tarball of knights source that I can use to check it out ?
All the recent knights CVS does that. To get the CVS tree you have to cvs -d:pserver:anonymous@cvs.knights.sourceforge.net:/cvsroot/knights login cvs -z3 -d:pserver:anonymous@cvs.knights.sourceforge.net:/cvsroot/knights co knights
This is what you get if you remove the frozen files (.m4f): ---------------------------------------------------- azarah@nosferatu knights.test $ WANT_AUTOCONF_2_5=1 make -f Makefile.dist This Makefile is only for the CVS repository This will be deleted before making the distribution *** Creating acinclude.m4 !!! If you get recursion errors from autoconf, it is advisable to set the environment variable M4 to something including "--nesting-limit=500" *** Creating list of subdirectories *** Creating configure.in *** Creating aclocal.m4 *** Creating configure configure.in:73: error: m4_popdef: undefined macro: AC_Dest /usr/share/autoconf/autoconf/status.m4:844: AC_CONFIG_FILES is expanded from... configure.in:73: the top level autom4te-2.57: /usr/bin/m4 failed with exit status: 1 make[1]: *** [cvs] Error 1 make: *** [all] Error 2 azarah@nosferatu knights.test $ -------------------------------------------------------- So it seems its a problem with either autoconf in general, or the way how knights use it.
closing old crusty bugs