On Tue, Jun 19, 2001 at 04:08:18PM +0200, Arnd Bergmann wrote:
> On Tue, 19 Jun 2001, David Odin wrote:
> 
> > On Tue, Jun 19, 2001 at 02:58:20PM +0200, Arnd Bergmann wrote:
> >
> > > Interestingly, when this thing happens, the libraries are first built
> > > correctly during %make, but in %install, libtool tries to relink the
> > > files against the one it (thinks it) has just installed in $prefix, 
> > > when they are really in $RPM_BUILD_ROOT/$prefix.
> > > 
> > > The rebuilt libglib2-1.3.6-2mdk package just came through the mirrors, 
> > > and STILL has the problem, it appearantly was not installed before
> > > rebuilding!
> > > Also, libatk0, libgtk+2, pango and kdelibs still need an update or 
> > > rebuild since they depend on libglib-1.3.so.5.
> > > 
> >   Nothing in the compilation of glib-1.3.6 seems to need glib-1.3.5.
> >   I still don't understand why libglib-1.3.so.5 is needed by
> > libglib2-1.3.6-1mdk.
> 
> As I expained above, compilation goes fine. However, in 'make install',
> libglib-1.3.so.6 normally is installed in /usr/lib, but rpm lets
> it install in /home/odin/rpm/tmp/libglib2-root/usr/lib. So far, 
> everything is fine.
> Next, 'make install' gets to the gobject directory and notices that
> libgobject-1.3.so.6 links against ../.libs/libglib-1.3.so.6, where the
> following thing happens:
> 
> /bin/sh ../libtool  --mode=install /usr/bin/install -c libgobject-1.3.la 
>/home/arnd/rpm/tmp/glib-1.3.6-root/usr/lib/libgobject-1.3.la
> libtool: install: warning: relinking `libgobject-1.3.la'
> cd /home/arnd/rpm/BUILD/glib-1.3.6/gobject; /bin/sh ../libtool --mode=relink gcc
> -O3 -fomit-frame-pointer -pipe -mcpu=pentiumpro -march=i586 -ffast-math 
>-fno-strength-reduce -Wall -D_REENTRANT -o libgobject-1.3.la -rpath /usr/lib 
>-version-info 6:0:0 -export-dynamic gboxed.lo gbsearcharray.lo gclosure.lo genums.lo 
>gobject.lo gparam.lo gparamspecs.lo gsignal.lo gtype.lo gtypemodule.lo gtypeplugin.lo 
>gvalue.lo gvaluearray.lo gvaluetransform.lo gvaluetypes.lo ../libglib-1.3.la
> gcc -shared  gboxed.lo gbsearcharray.lo gclosure.lo genums.lo gobject.lo gparam.lo 
>gparamspecs.lo gsignal.lo gtype.lo gtypemodule.lo gtypeplugin.lo gvalue.lo 
>gvaluearray.lo gvaluetransform.lo gvaluetypes.lo  -L/usr/lib -lglib-1.3   -Wl,-soname 
>-Wl,libgobject-1.3.so.6 -o .libs/libgobject-1.3.so.6.0.0
> 
> >From this point on, libgobject-1.3.so.6.0.0 links against libglib-1.3.so.5
> if that was installed in /usr/lib. If no libglib is installed at all in
> /usr/lib, libgobject and the others will contain no reference to libglib
> at all, which is ok.
> I think the reason for the problem is either a bug in rpm or in libtool,
> because AFAIR, it used to work most of the time, and now various packages
> show this behaviour. I did not find a fix, either.
> 
  Indeed, there's something very... peculiar here:
[dindinx@ke gobject]$ pwd
/home/dindinx/RPM/BUILD/glib-1.3.6/gobject
[dindinx@ke gobject]$ ldd .libs/gobject-query
        libgobject-1.3.so.6 => /usr/lib/libgobject-1.3.so.6 (0x4002d000)
        libglib-1.3.so.6 => /usr/lib/libglib-1.3.so.6 (0x40063000)
        libc.so.6 => /lib/libc.so.6 (0x400bd000)
        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
        libglib-1.3.so.5 => not found
[dindinx@ke gobject]$ ldd .libs/glib-genmarshal
        libglib-1.3.so.6 => /usr/lib/libglib-1.3.so.6 (0x4002d000)
        libc.so.6 => /lib/libc.so.6 (0x40087000)
        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)

I cannot understand why glib-genmarshal isn't linked against libglib-1.3.so.5
while gobject-query is. FYI:
[dindinx@ke .libs]$ ldd libgobject-1.3.so.6.0.0
        libglib-1.3.so.6 => /home/dindinx/RPM/BUILD/glib-1.3.6/.libs/libglib-1.3.so.6 
(0x40037000)
        libc.so.6 => /lib/libc.so.6 (0x400a7000)
        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x2aaaa000)

    Still searching...

                     DindinX

-- 
  [EMAIL PROTECTED]

Reply via email to