Bug List: (This bug is not in your last search results)   Show last search results      Search page      Enter new bug
Bug#: 220361
Alias:
Product:
Component:
Status: RESOLVED
Resolution: FIXED
Assigned To: Konstantin Arkhipov <voxus@gentoo.org>
Hardware:
OS:
Version:
Priority:
Severity:
Reporter: Dan Coats <admin@easyshellz.com>
Add CC:
CC:
Remove selected CCs
URL:
Summary:
Status Whiteboard:
Keywords:

Filename Description Type Creator Created Size Actions
net-dns:bind-9.4.2:20080505-132337.log net-dns:bind-9.4.2:20080505-132337.log text/plain Dan Coats 2008-05-05 13:34 0000 31.78 KB Details
bind-9.4.2.ebuild Updated ebuild. note the double-run of eautoreconf (ugly) text/plain Christian Schmidt 2008-05-08 09:26 0000 8.86 KB Details
bind-9.4.2-libtool-2.2.4.patch patch for configure.in, required by the updated ebuild patch Christian Schmidt 2008-05-08 09:27 0000 238 bytes Details | Diff
bind-9.4.2.ebuild Fixed ebuild, the correct way. text/plain Christian Schmidt 2008-05-09 20:40 0000 8.66 KB Details
Create a New Attachment (proposed patch, testcase, etc.) View All

Bug 220361 depends on: Show dependency tree
Bug 220361 blocks: 212763
Votes: 0    Show votes for this bug    Vote for this bug

Additional Comments: (this is where you put emerge --info)


Not eligible to see or edit group visibility for this bug.






View Bug Activity   |   Format For Printing   |   XML   |   Clone This Bug


Description:   Opened: 2008-05-05 13:31 0000
net-dns/bind-9.4.2 fails with libtool: Version mismatch error.  This is libtool
2.2.4, but the definition of this LT_INIT comes from an older release. You
should recreate aclocal.m4 with macros from libtool 2.2.4 and run autoconf
again.


Reproducible: Always

Actual Results:  
/bin/sh /var/tmp/portage/net-dns/bind-9.4.2/work/bind-9.4.2/libtool
--mode=compile i686-pc-linux-gnu-gcc 
-I/var/tmp/portage/net-dns/bind-9.4.2/work/bind-9.4.2 -I./include
-I./../pthreads/include -I../include -I./../include -I./..  -D_REENTRANT   -O2
-march=athlon-xp -pipe -fomit-frame-pointer  -W -Wall -Wmissing-prototypes
-Wcast-qual -Wwrite-strings -Wformat -Wpointer-arith -fno-strict-aliasing  -c
app.c
/var/tmp/portage/net-dns/bind-9.4.2/work/bind-9.4.2/libtool: line 454: CDPATH:
command not found
/var/tmp/portage/net-dns/bind-9.4.2/work/bind-9.4.2/libtool: line 1146:
func_opt_split: command not found
libtool: Version mismatch error.  This is libtool 2.2.4, but the
libtool: definition of this LT_INIT comes from an older release.
libtool: You should recreate aclocal.m4 with macros from libtool 2.2.4
libtool: and run autoconf again.
make[3]: *** [app.lo] Error 63
make[3]: Leaving directory
`/var/tmp/portage/net-dns/bind-9.4.2/work/bind-9.4.2/lib/isc/unix'
make[2]: *** [subdirs] Error 1
make[2]: Leaving directory
`/var/tmp/portage/net-dns/bind-9.4.2/work/bind-9.4.2/lib/isc'
make[1]: *** [subdirs] Error 1
make[1]: Leaving directory
`/var/tmp/portage/net-dns/bind-9.4.2/work/bind-9.4.2/lib'
make: *** [subdirs] Error 1
 * 
 * ERROR: net-dns/bind-9.4.2 failed.
 * Call stack:
 *               ebuild.sh, line   49:  Called src_compile
 *             environment, line 2930:  Called die
 * The specific snippet of code:
 *       emake -j1 || die "failed to compile bind"
 *  The die message:
 *   failed to compile bind
 * 
 * If you need support, post the topmost build error, and the call stack if
relevant.
 * A complete build log is located at
'/var/log/portage/net-dns:bind-9.4.2:20080505-132337.log'.
 * The ebuild environment file is located at
'/var/tmp/portage/net-dns/bind-9.4.2/temp/environment'.
 * 



Expected Results:  
complete with success.

Portage 2.1.5_rc6 (default/linux/x86/2008.0/desktop, gcc-4.2.3, glibc-2.7-r2,
2.6.25-gentoo-r1 i686)
=================================================================
System uname: 2.6.25-gentoo-r1 i686 AMD Athlon(tm) XP 2500+
Timestamp of tree: Mon, 05 May 2008 12:21:01 +0000
ccache version 2.4 [disabled]
app-shells/bash:     3.2_p39
dev-java/java-config: 1.3.7, 2.1.6
dev-lang/python:     2.4.4-r6, 2.5.2-r2
dev-python/pycrypto: 2.0.1-r6
dev-util/ccache:     2.4-r7
sys-apps/baselayout: 2.0.0
sys-apps/openrc:     0.2.3
sys-apps/sandbox:    1.2.18.1-r2
sys-devel/autoconf:  2.13, 2.62
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2,
1.10.1-r1
sys-devel/binutils:  2.18-r1
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool:   2.2.4
virtual/os-headers:  2.6.25-r1
ACCEPT_KEYWORDS="x86 ~x86"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=athlon-xp -pipe -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config
/usr/kde/3.5/shutdown /usr/kde/4.0/env /usr/kde/4.0/share/config
/usr/kde/4.0/shutdown /usr/share/config /var/bind /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf
/etc/gconf /etc/gentoo-release /etc/php/apache2-php5/ext-active/
/etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild
/etc/splash /etc/terminfo /etc/udev/rules.d"
CXXFLAGS="-O2 -march=athlon-xp -pipe -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
FEATURES="distlocks parallel-fetch sandbox sfperms strict unmerge-orphans
userfetch"
GENTOO_MIRRORS="http://gentoo.osuosl.org/
http://gentoo.cites.uiuc.edu/pub/gentoo/
http://open-systems.ufl.edu/mirrors/gentoo
http://mirrors.acm.cs.rpi.edu/gentoo/"
LANG="en_US.utf8"
LDFLAGS=""
LINGUAS="en"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress
--force --whole-file --delete --stats --timeout=180 --exclude=/distfiles
--exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/portage/local/layman/nx /usr/portage/local"
SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage"
USE="3dnow 3dnowext X a52 aac accessibility acl acpi adns aiglx aim alsa
apache2 arts audiofile avahi bash-completion bcmath berkdb bidi bindinst
bluetooth branding browserplugin bzip2 cairo calendar caps cdr cli cracklib
crypt cups curlwrappers dbus dedicated dga dio divx divx4linux dlloader dri dts
dvd dvdr dvdread eds emacs emacs-w3 emboss emerald encode erandom escreen esd
ethereal etwin evo examples expat fam fastcgi fbcon fbcondecor ffmpeg firefox
font fortran ftp gd gdbm gif glitz glut gnome gnusetup gnutls gpm gstreamer gtk
gtkhtml hal hardened iconv imap immqt-bc inifile innodb ipod ipv6 isdnlog
ithreads java javascript jp2 jpeg jpeg2k kde kerberos krb4 ldap libcaca
libclamv libnotify live lm_sensors lzo mad maildir mailwrapper midi mikmod
milter mime ming mmap mmx modplug mono motif mozbranding mp3 mp4 mpeg mpi msn
mudflap musicbrainz ncurses nls nptl nptlonly nsplugin nvidia oav objc ogg
opengl openmp oracle oscar oss pam pcre pdf perl php pic png portaudio posix
ppds pppd python qt3 qt3support qt4 quicktime readline real realmedia
reflection samba sdl session shared spell spl sqlite sse ssl
startup-notification svg symlink tcltktcpd tcpd test threads tiff truetype
type1 unicode urandom usb usepackagedmakefiles userlocales vcd vhosts videos
vorbis win32codecs wma wmf wxwindows x86 xcomposite xinerama xml xorg xpm
xprint xrandr xv xvid xvmc yahoo zeroconf zlib" ALSA_CARDS="intel8x0"
ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file
hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route
share shm softvol" APACHE2_MODULES="actions alias auth_basic auth_digest
authn_anon authn_dbd authn_dbm authn_default authn_file authz_dbm authz_default
authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs
dav_lock dbd deflate dir disk_cache env expires ext_filter file_cache filter
headers ident imagemap include info log_config logio mem_cache mime mime_magic
negotiation proxy proxy_ajp proxy_balancer proxy_connect proxy_http rewrite
setenvif so speling status unique_id userdir usertrack vhost_alias"
ELIBC="glibc" INPUT_DEVICES="keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad
cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en"
USERLAND="GNU" VIDEO_CARDS="nv nvidia vesa"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL,
PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

------- Comment #1 From Conrad Kostecki 2008-05-05 13:32:07 0000 -------
Same problem here

------- Comment #2 From Dan Coats 2008-05-05 13:34:56 0000 -------
Created an attachment (id=151927) [details]
net-dns:bind-9.4.2:20080505-132337.log

------- Comment #3 From Tobias Scherbaum 2008-05-05 19:42:53 0000 -------
*** Bug 218823 has been marked as a duplicate of this bug. ***

------- Comment #4 From Marcin Ryk 2008-05-06 06:43:12 0000 -------
Temporary workaround can be done by masking libtool-2.2.4 (in
/etc/portage/package.mask) by adding =sys-devel/libtool-2.2.4 line and emerging
libtool again.

Tested on 5 machines, this solves our problem, but remember this is only
TEMPORARY WORKAROUND

------- Comment #5 From Jan Kundrát 2008-05-06 07:30:29 0000 -------
*** Bug 220531 has been marked as a duplicate of this bug. ***

------- Comment #6 From Rafał Mużyło 2008-05-07 12:15:32 0000 -------
(In reply to comment #4)
> Temporary workaround can be done by masking libtool-2.2.4 (in
> /etc/portage/package.mask) by adding =sys-devel/libtool-2.2.4 line and emerging
> libtool again.
> 
> Tested on 5 machines, this solves our problem, but remember this is only
> TEMPORARY WORKAROUND
> 
So if this is as you said TEMPORARY WORKAROUND, then why are you posting
non-fixes ?
Back on topic.
As I don't have bind installed and its home site doesn't have online source
browsing, I can't say much, but it looks like running eautoreconf in
${S}/lib/bind should fix it.

------- Comment #7 From Rafał Mużyło 2008-05-07 12:24:25 0000 -------
Then again, maybe not.
If they keep libtool files (specifically libtool.m4) somewhere, this is what
messes up the rebuild, cause IIRC this error appears when ltmain.sh is updated
and libtool.m4 stays old.

------- Comment #8 From Christian Schmidt 2008-05-08 09:25:18 0000 -------
(In reply to comment #7)
> Then again, maybe not.
> If they keep libtool files (specifically libtool.m4) somewhere, this is what
> messes up the rebuild, cause IIRC this error appears when ltmain.sh is updated
> and libtool.m4 stays old.

Yes, it is there, included by aclocal.m4. I fixed it (for me) with an ugly hack
(I'll attach it).

------- Comment #9 From Christian Schmidt 2008-05-08 09:26:20 0000 -------
Created an attachment (id=152437) [details]
Updated ebuild. note the double-run of eautoreconf (ugly)

------- Comment #10 From Christian Schmidt 2008-05-08 09:27:03 0000 -------
Created an attachment (id=152439) [details]
patch for configure.in, required by the updated ebuild

------- Comment #11 From Rafał Mużyło 2008-05-09 09:09:09 0000 -------
OK, if your hack works , then, while using your patch, try simply a single line
of:
AT_M4DIR="m4" WANT_AUTOCONF=2.5 AT_NO_RECURSIVE=1 eautoreconf
(no die, as eutoreconf dies anyway, if it fails).

------- Comment #12 From Rafał Mużyło 2008-05-09 09:12:00 0000 -------
And the point of it is, the version included in aclocal.m4 doesn't matter
unless aclocal.m4 was not autogenerated by aclocal.

------- Comment #13 From Christian Schmidt 2008-05-09 09:16:51 0000 -------
The problem is that the content of the "m4" subdirectory is created by the
first "libtoolize" run. You can see the following notices afterwards in the
original:

the libtoolize log shows:
***** libtoolize *****
***** libtoolize --copy --force --install

libtoolize: putting auxiliary files in `.'.
libtoolize: copying file `./config.guess'
libtoolize: copying file `./config.sub'
libtoolize: copying file `./install-sh'
libtoolize: copying file `./ltmain.sh'
libtoolize: You should add the contents of the following files to `aclocal.m4':
libtoolize:   `/usr/share/aclocal/libtool.m4'
libtoolize:   `/usr/share/aclocal/ltoptions.m4'
libtoolize:   `/usr/share/aclocal/ltversion.m4'
libtoolize:   `/usr/share/aclocal/ltsugar.m4'
libtoolize:   `/usr/share/aclocal/lt~obsolete.m4'
libtoolize: Consider adding `AC_CONFIG_MACRO_DIR([m4])' to configure.in and
libtoolize: rerunning libtoolize, to keep the correct libtool macros in-tree.
libtoolize: Consider adding `-I m4' to ACLOCAL_AMFLAGS in Makefile.am.
libtoolize: `AC_PROG_RANLIB' is rendered obsolete by `LT_INIT'

The patch does add the `AC_CONFIG_MACRO_DIR([m4])' to configure.in. The cat
m4/* does the first part, which is only possible after the libtoolize run
created the files.

Your idea does sadly not work, just tried it.

------- Comment #14 From Christian Schmidt 2008-05-09 09:18:46 0000 -------
Adding `AC_CONFIG_MACRO_DIR([m4])' to configure.in changes the path to m4/
instead of /usr/share/aclocal. Forgot to mention that,

------- Comment #15 From Rafał Mużyło 2008-05-09 16:00:58 0000 -------
It says 'Consider adding' not 'You must add'
And of course comment #14 is completely wrong:
AC_CONFIG_MACRO_DIR does something different (from autoconf info page):
-- Macro: AC_CONFIG_MACRO_DIR (DIR)
     Specify DIR as the location of additional local Autoconf macros.

So, first, check if aclocal.m4 is autogenerated by aclocal (it should tell that
in the first or second line)
Then check which libtool macro they use in configure.in (AC_PROG_LIBTOOL or
AM_PROG_LIBTOOL) and grep for it in the sources. Post resulting file list
(configure.in and aclocal.m4 are unimportant - if aclocal.m4 was autogenerated,
if not we will have to see how was it generated).

------- Comment #16 From Christian Schmidt 2008-05-09 20:17:16 0000 -------
No, it definitely is not autogenerated:

[~/bind-9.4.2]>cat aclocal.m4 
sinclude(./libtool.m4)dnl

[~/bind-9.4.2]>egrep -re A._PROG_LIBTOOL .
./lib/bind/configure.in:                AM_PROG_LIBTOOL
./configure.in:         AM_PROG_LIBTOOL
./libtool.m4:# serial 47 AC_PROG_LIBTOOL
./libtool.m4:# AC_PROG_LIBTOOL
./libtool.m4:AC_DEFUN([AC_PROG_LIBTOOL],
./libtool.m4:[AC_REQUIRE([_AC_PROG_LIBTOOL])dnl
./libtool.m4:])])# AC_PROG_LIBTOOL
./libtool.m4:# _AC_PROG_LIBTOOL
./libtool.m4:AC_DEFUN([_AC_PROG_LIBTOOL],
./libtool.m4:define([AC_PROG_LIBTOOL], [])
./libtool.m4:])# _AC_PROG_LIBTOOL
./libtool.m4:# In the future, this macro may have to be called after
AC_PROG_LIBTOOL.
./libtool.m4:AC_DEFUN([AM_PROG_LIBTOOL],   [AC_PROG_LIBTOOL])
./contrib/idn/idnkit-1.0-src/aclocal.m4:# serial 40 AC_PROG_LIBTOOL
./contrib/idn/idnkit-1.0-src/aclocal.m4:AC_DEFUN(AC_PROG_LIBTOOL,
./contrib/idn/idnkit-1.0-src/aclocal.m4:# In the future, this macro may have to
be called after AC_PROG_LIBTOOL.
./contrib/idn/idnkit-1.0-src/aclocal.m4:AC_DEFUN(AM_PROG_LIBTOOL,
[indir([AC_PROG_LIBTOOL])])dnl
./contrib/idn/idnkit-1.0-src/configure.in:AM_PROG_LIBTOOL

I do not have enough knowledge of autotools to judge, but is this what you were
looking for?

What I meant in comment #14 is that the output in said libtool log changes to
m4/, likely becuase it installs the "local additional macros" there - you can
see that for yourself (with only the patch):

cat /tmp/portage/net-dns/bind-9.4.2/temp/libtoolize-15069.out 
***** libtoolize *****
***** libtoolize --copy --force --install

libtoolize: putting auxiliary files in `.'.
libtoolize: copying file `./config.guess'
libtoolize: copying file `./config.sub'
libtoolize: copying file `./install-sh'
libtoolize: copying file `./ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIR, `m4'.
libtoolize: copying file `m4/libtool.m4'
libtoolize: You should add the contents of `m4/libtool.m4' to `aclocal.m4'.
libtoolize: copying file `m4/ltoptions.m4'
libtoolize: You should add the contents of `m4/ltoptions.m4' to `aclocal.m4'.
libtoolize: copying file `m4/ltsugar.m4'
libtoolize: You should add the contents of `m4/ltsugar.m4' to `aclocal.m4'.
libtoolize: copying file `m4/ltversion.m4'
libtoolize: You should add the contents of `m4/ltversion.m4' to `aclocal.m4'.
libtoolize: copying file `m4/lt~obsolete.m4'
libtoolize: You should add the contents of `m4/lt~obsolete.m4' to `aclocal.m4'.
libtoolize: Consider adding `-I m4' to ACLOCAL_AMFLAGS in Makefile.am.
libtoolize: `AC_PROG_RANLIB' is rendered obsolete by `LT_INIT'

------- Comment #17 From Rafał Mużyło 2008-05-09 20:23:35 0000 -------
In that case solution is trivial:
rm ${S}/libtool.m4 ${S}/aclocal.m4
before eutoreconf line, your patch should not be necessary. 

------- Comment #18 From Rafał Mużyło 2008-05-09 20:26:51 0000 -------
I mean, of course, the line from original ebuild.

------- Comment #19 From Christian Schmidt 2008-05-09 20:40:15 0000 -------
Created an attachment (id=152693) [details]
Fixed ebuild, the correct way.

The patch is no longer necessary with this.

------- Comment #20 From Christian Schmidt 2008-05-09 20:41:18 0000 -------
Thanks Rafał, you are absolutely right. I thought I tried it, but must have
toyed with too many things at the same time.

------- Comment #21 From Tobias Scherbaum 2008-05-09 21:03:57 0000 -------
(In reply to comment #17)
> In that case solution is trivial:
> rm ${S}/libtool.m4 ${S}/aclocal.m4
> before eutoreconf line, your patch should not be necessary. 
> 

Thanks to both of you, that did the trick. I just committed your fix to CVS.

Bug List: (This bug is not in your last search results)   Show last search results      Search page      Enter new bug