Bug 109669

Summary: libtoolize bug causes misbuilding in gtk+-1.2.10-28.1
Product: [Fedora] Fedora Reporter: Thomas Sailer <fedora>
Component: libtoolAssignee: Daniel Reed <djr>
Status: CLOSED WORKSFORME QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: 1   
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2004-08-20 17:56:37 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Thomas Sailer 2003-11-10 20:43:33 UTC
Description of problem:
libtoolize bug causes misbuilding in gtk+-1.2.10-28.1

Version-Release number of selected component (if applicable):
libtool-1.5-8

How reproducible:
always, verified on multiple machines

Steps to Reproduce:
1. rpmbuild --rebuild gtk+-1.2.10-28.1.src.rpm and watch the error
messages
  
Actual results:
$ ldd /usr/lib/libgdk-1.2.so.0
libgmodule-1.2.so.0 => /usr/lib/libgmodule-1.2.so.0 (0x00df2000)
libglib-1.2.so.0 => /usr/lib/libglib-1.2.so.0 (0x002f4000)
libdl.so.2 => /lib/libdl.so.2 (0x00c01000)
libm.so.6 => /lib/tls/libm.so.6 (0x00bdd000)
libc.so.6 => /lib/tls/libc.so.6 (0x00aa2000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x00a8a000)

Notice that libXi is missing. This means that almost all programs
linked against libgdk will fail to start and give the error message:
"relocation error: /usr/lib/libgdk-1.2.so.0: undefined symbol:
XListInputDevices", because libXi is not pulled in.



Expected results:
$ ldd /usr/lib/libgdk-1.2.so.0
libgmodule-1.2.so.0 => /usr/lib/libgmodule-1.2.so.0 (0x00df2000)
libglib-1.2.so.0 => /usr/lib/libglib-1.2.so.0 (0x002f4000)
libdl.so.2 => /lib/libdl.so.2 (0x00c01000)
libXi.so.6 => /usr/X11R6/lib/libXi.so.6 (0x00231000)
libXext.so.6 => /usr/X11R6/lib/libXext.so.6 (0x0094a000)
libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x00c06000)
libm.so.6 => /lib/tls/libm.so.6 (0x00bdd000)
libc.so.6 => /lib/tls/libc.so.6 (0x00aa2000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x00a8a000)


Additional info:

Comment 1 Thomas Sailer 2003-11-10 20:45:25 UTC
Forgot to mention that the culprit is most likely the $EGREP variable
in libtool.m4, which is never set


Comment 2 Jens Petersen 2004-04-04 07:51:13 UTC
Is this any better with libtool 1.5.2 or 1.5.4 (just released)?

Do you have an example of an app that crashes because of this?
I see the same ldd output here, and gtk+ apps seem to run just
fine for me.

Comment 3 kanagawa jigorou 2004-04-16 05:52:05 UTC
Since change to libtool-1.5.4,
I can't build db4-4.2.52-3.1.src.rpm and gtk2-2.4.0-1.src.rpm 
what are able to be built with libtool-1.5.2.

Comment 4 Daniel Reed 2004-08-20 16:15:32 UTC
What exactly are you seeing (as the failure) when you reproduce this?
db4 and gtk2 have been rebuilt unattended many times since your bug
has been filed. (They have also been updated; current is db4-4.2.52-5
and gtk2-2.4.7-1.)

Comment 5 Thomas Sailer 2004-08-20 16:43:50 UTC
My original bug report was about gtk (gdk) 1.

as of gtk+-1.2.10-29.1.1 the problem is still there.

objdump -x -T /usr/lib/libgdk-1.2.so.0.9.1|grep XListInputDevices
00000000      D  *UND*  00000000              XListInputDevices
libgdk needs the symbol XListInputDevices (and others), that is
defined in libXi:
objdump -x -T /usr/X11R6/lib/libXi.so.6.0|grep XListInputDevices
00004110 g    DF .text  00000477  Base        XListInputDevices

but libgdk does not contain a NEEDED tag for libXi.

I don't care anymore, I've recompiled or deleted the old apps...