Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 128442 - revdep-rebuild will not find broken libraries with broken ld.so.conf entries
Summary: revdep-rebuild will not find broken libraries with broken ld.so.conf entries
Status: RESOLVED NEEDINFO
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Tools (show other bugs)
Hardware: AMD64 Linux
: High normal
Assignee: Portage Tools Team
URL:
Whiteboard:
Keywords: InVCS
: 128444 (view as bug list)
Depends on:
Blocks:
 
Reported: 2006-04-01 14:56 UTC by Avuton Olrich
Modified: 2006-05-22 19:11 UTC (History)
8 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Avuton Olrich 2006-04-01 14:56:20 UTC
After the expat ABI breakage, my revdep-rebuild couldn't find all the broken packages. After further investigation I noticed some entries in my ld.so.conf like such:

/usr/kde//3.5/lib64

These entries would not be found by revdep-rebuild, but most other packages deal with accidental double slashes gracefully. After removing the extra slashes from LDPATH env.d entries it found the problem libraries. It would be great if at the very least revdep-rebuild could warn if there is a malformed path in ld.so.conf, possibly something as simple as (just as an example)

if [ ! -d $PATH ];
then
     echo "Warning: Couldn't find/search path! $PATH"
     echo "Please correct the entry in your /etc/env.d/ entries";
fi

Or maybe just sed out the duplicate slash?
Comment 1 Andrew Gaffney (RETIRED) gentoo-dev 2006-04-01 15:00:37 UTC
What version of gentoolkit? I've got 0.2.2_pre3 here and revdep-rebuild handles the double slash just fine:

<snip>
  broken /usr/kde/3.5/bin/makekdewidgets (requires  libexpat.so.0)
  broken /usr/kde/3.5/bin/meinproc (requires  libexpat.so.0)
  broken /usr/kde/3.5//lib64/kde3/cupsdconf.so (requires  libexpat.so.0)
  broken /usr/kde/3.5//lib64/kde3/dcopserver.so (requires  libexpat.so.0)
  broken /usr/kde/3.5//lib64/kde3/kabc_dir.so (requires  libexpat.so.0)
  broken /usr/kde/3.5//lib64/kde3/kabc_file.so (requires  libexpat.so.0)
  broken /usr/kde/3.5//lib64/kde3/kabcformat_binary.so (requires  libexpat.so.0)
<snip>
Comment 2 Avuton Olrich 2006-04-01 15:06:52 UTC
I'm using the same version, I misspoke. It can _find_ the libraries, but can't put them to ebuilds.
Comment 3 Simon Stelling (RETIRED) gentoo-dev 2006-04-01 15:13:26 UTC
*** Bug 128444 has been marked as a duplicate of this bug. ***
Comment 4 SpanKY gentoo-dev 2006-04-02 00:23:06 UTC
side note; kde shouldnt be installing such broken paths
Comment 5 gent_bz 2006-04-02 08:17:42 UTC
See https://bugs.gentoo.org/show_bug.cgi?id=128085#c27 for a temporary, largely untested, possible, nasty workaround in revdep-rebuild.

The better approach (I guess) would be to run something like a sed 's|/\+|/|g' over /etc/ld.so.conf - and then to get kde to do the right thing in the first place.
Comment 6 Paul Varner (RETIRED) gentoo-dev 2006-04-03 15:49:51 UTC
Fixed with gentoolkit-0.2.2_pre4, please test and verify
Comment 7 Justace Clutter 2006-04-04 07:28:26 UTC
(In reply to comment #6)
> Fixed with gentoolkit-0.2.2_pre4, please test and verify
> 

No go..  I was having this issue so I did the emerge --sync and then emerged gentoolkit.  I ran it with -pv option and it found a butload of apps that were broken and then decided that it needed to rebuild openoffice-bin.  I double checked my /etc/ld.so.conf file to look for the double slashes but did not find them.  I dunno, I really want this fixed badly.  I have recompiled kde twice now to fix the problem with no avail.  Ugggg -> libexpat!
Comment 8 Jakub Moc (RETIRED) gentoo-dev 2006-04-04 07:32:10 UTC
(In reply to comment #7)
> (In reply to comment #6)
> > Fixed with gentoolkit-0.2.2_pre4, please test and verify
> > 
> 
> No go..  I was having this issue so I did the emerge --sync and then emerged
> gentoolkit.  I ran it with -pv option and it found a butload of apps that were
> broken and then decided that it needed to rebuild openoffice-bin. 

revdep-rebuild does not work with binary ebuilds, that's really an unrelated issue (see Bug 32276). 
Comment 9 Justace Clutter 2006-04-04 07:38:42 UTC
(In reply to comment #8)
> (In reply to comment #7)
> > (In reply to comment #6)
> > > Fixed with gentoolkit-0.2.2_pre4, please test and verify
> > > 
> > 
> > No go..  I was having this issue so I did the emerge --sync and then emerged
> > gentoolkit.  I ran it with -pv option and it found a butload of apps that were
> > broken and then decided that it needed to rebuild openoffice-bin. 
> 
> revdep-rebuild does not work with binary ebuilds, that's really an unrelated
> issue (see Bug 32276). 
> 

Well,

     The important thing to gather from this is that revdep-rebuild did not find the offending library to recompile.  I attempeted no fix for the libexpat.so.0 problem.

Justace
Comment 10 Justace Clutter 2006-04-04 12:23:56 UTC
Ok, so for compleatness:

prophecylaptop ~ # revdep-rebuild --library libexpat.so.0
Configuring search environment for revdep-rebuild
--- Invalid atom in /etc/portage/package.keywords: ~x11-libs/libXcursor
--- Invalid atom in /etc/portage/package.keywords: ~x11-apps/xset
--- Invalid atom in /etc/portage/package.keywords: ~x11-apps/xsetroot
--- Invalid atom in /etc/portage/package.unmask: ~x11-libs/libXcursor
--- Invalid atom in /etc/portage/package.keywords: ~x11-libs/libXcursor
--- Invalid atom in /etc/portage/package.keywords: ~x11-apps/xset
--- Invalid atom in /etc/portage/package.keywords: ~x11-apps/xsetroot
--- Invalid atom in /etc/portage/package.unmask: ~x11-libs/libXcursor
--- Invalid atom in /etc/portage/package.keywords: ~x11-libs/libXcursor
--- Invalid atom in /etc/portage/package.keywords: ~x11-apps/xset
--- Invalid atom in /etc/portage/package.keywords: ~x11-apps/xsetroot
--- Invalid atom in /etc/portage/package.unmask: ~x11-libs/libXcursor
--- Invalid atom in /etc/portage/package.keywords: ~x11-libs/libXcursor
--- Invalid atom in /etc/portage/package.keywords: ~x11-apps/xset
--- Invalid atom in /etc/portage/package.keywords: ~x11-apps/xsetroot
--- Invalid atom in /etc/portage/package.unmask: ~x11-libs/libXcursor
--- Invalid atom in /etc/portage/package.keywords: ~x11-libs/libXcursor
--- Invalid atom in /etc/portage/package.keywords: ~x11-apps/xset
--- Invalid atom in /etc/portage/package.keywords: ~x11-apps/xsetroot
--- Invalid atom in /etc/portage/package.unmask: ~x11-libs/libXcursor
--- Invalid atom in /etc/portage/package.keywords: ~x11-libs/libXcursor
--- Invalid atom in /etc/portage/package.keywords: ~x11-apps/xset
--- Invalid atom in /etc/portage/package.keywords: ~x11-apps/xsetroot
--- Invalid atom in /etc/portage/package.unmask: ~x11-libs/libXcursor

Checking reverse dependencies...

Packages containing binaries and libraries using libexpat.so.0
will be emerged.

Collecting system binaries and libraries... done.
  (/root/.revdep-rebuild.1_files)

Checking dynamic linking...
  found /usr/bin/inkscape
  found /usr/bin/inkview
  found /usr/kde/3.5/bin/amarok
  found /usr/kde/3.5/bin/amarokapp
  found /usr/kde/3.5/bin/amarokcollectionscanner
  found /usr/kde/3.5/bin/k3b
  found /usr/kde/3.5/bin/kaffeine
  found /usr/kde/3.5/bin/kdetv
  found /usr/kde/3.5/bin/kfreeflight
  found /usr/kde/3.5/bin/kgstplayer
  found /usr/kde/3.5/bin/klicker
  found /usr/kde/3.5/bin/kmplayer
  found /usr/kde/3.5/bin/kplayer
  found /usr/kde/3.5/bin/kxineplayer
  found /usr/kde/3.5/bin/kxvplayer
  found /usr/kde/3.5/lib/kde3/kcm_k3bsetup2.so
  found /usr/kde/3.5/lib/kde3/kdetv_v4l.so
  found /usr/kde/3.5/lib/kde3/kdetv_v4l2.so
  found /usr/kde/3.5/lib/kde3/kdetv_xv.so
  found /usr/kde/3.5/lib/kde3/kfile_k3b.so
  found /usr/kde/3.5/lib/kde3/kfile_kplayer.so
  found /usr/kde/3.5/lib/kde3/kio_videodvd.so
  found /usr/kde/3.5/lib/kde3/kmplayer.so
  found /usr/kde/3.5/lib/kde3/konqsidebar_universalamarok.so
  found /usr/kde/3.5/lib/kde3/libamarok_artsengine_plugin.so
  found /usr/kde/3.5/lib/kde3/libamarok_gst10engine_plugin.so
  found /usr/kde/3.5/lib/kde3/libamarok_gstengine_plugin.so
  found /usr/kde/3.5/lib/kde3/libamarok_vfat-mediadevice.so
  found /usr/kde/3.5/lib/kde3/libamarok_void-engine_plugin.so
  found /usr/kde/3.5/lib/kde3/libamarok_xine-engine.so
  found /usr/kde/3.5/lib/kde3/libgstreamerpart.so
  found /usr/kde/3.5/lib/kde3/libk3balsaoutputplugin.so
  found /usr/kde/3.5/lib/kde3/libk3bartsoutputplugin.so
  found /usr/kde/3.5/lib/kde3/libk3baudiometainforenamerplugin.so
  found /usr/kde/3.5/lib/kde3/libk3baudioprojectcddbplugin.so
  found /usr/kde/3.5/lib/kde3/libk3bexternalencoder.so
  found /usr/kde/3.5/lib/kde3/libk3bffmpegdecoder.so
  found /usr/kde/3.5/lib/kde3/libk3blameencoder.so
  found /usr/kde/3.5/lib/kde3/libk3blibsndfiledecoder.so
  found /usr/kde/3.5/lib/kde3/libk3bmaddecoder.so
  found /usr/kde/3.5/lib/kde3/libk3boggvorbisdecoder.so
  found /usr/kde/3.5/lib/kde3/libk3boggvorbisencoder.so
  found /usr/kde/3.5/lib/kde3/libk3bsoxencoder.so
  found /usr/kde/3.5/lib/kde3/libk3bwavedecoder.so
  found /usr/kde/3.5/lib/kde3/libkaffeinemp3lame.so
  found /usr/kde/3.5/lib/kde3/libkaffeineoggvorbis.so
  found /usr/kde/3.5/lib/kde3/libkaffeinepart.so
  found /usr/kde/3.5/lib/kde3/libkmplayerpart.so
  found /usr/kde/3.5/lib/kde3/libkplayerpart.so
  found /usr/kde/3.5/lib/libk3b.so.3.0.0
  found /usr/kde/3.5/lib/libk3bdevice.so.3.0.0
  found /usr/kde/3.5/lib/libkaffeineaudioencoder.so.0.0.1
  found /usr/kde/3.5/lib/libkdeinit_kmplayer.so
  found /usr/kde/3.5/lib/libkdetv.so.1.0.0
  found /usr/kde/3.5/lib/libkdetvvideo.so.0.0.0
  found /usr/kde/3.5/lib/libkmediapart.so.0.0.1
  found /usr/kde/3.5/lib/libkvideoio.so.1.0.0
 done.
  (/root/.revdep-rebuild_77938876.3_rebuild)

Assigning files to ebuilds... done.
  (/root/.revdep-rebuild_77938876.4_ebuilds)

Evaluating package order... done.
  (/root/.revdep-rebuild_77938876.5_order)

There are no dynamic links to libexpat.so.0... All done.


But here is the ldd of k3b

prophecylaptop ~ # ldd /usr/kde/3.5/bin/k3b
        linux-gate.so.1 =>  (0xffffe000)
        libk3bdevice.so.3 => /usr/kde/3.5/lib/libk3bdevice.so.3 (0xb7f04000)
        libk3b.so.3 => /usr/kde/3.5/lib/libk3b.so.3 (0xb7d29000)
        libsamplerate.so.0 => /usr/lib/libsamplerate.so.0 (0xb7d0c000)
        libdvdread.so.3 => /usr/lib/libdvdread.so.3 (0xb7cef000)
        libXtst.so.6 => /usr/lib/libXtst.so.6 (0xb7ce9000)
        libhal.so.1 => /usr/lib/libhal.so.1 (0xb7ce0000)
        libdbus-qt-1.so.1 => /usr/lib/libdbus-qt-1.so.1 (0xb7cce000)
        libdbus-1.so.2 => /usr/lib/libdbus-1.so.2 (0xb7ca4000)
        libnsl.so.1 => /lib/libnsl.so.1 (0xb7c69000)
        libgcc_s.so.1 => /usr/lib/gcc/i686-pc-linux-gnu/4.0.2/libgcc_s.so.1 (0xb7c5e000)
        libkparts.so.2 => /usr/kde/3.5/lib/libkparts.so.2 (0xb7c17000)
        libkio.so.4 => /usr/kde/3.5/lib/libkio.so.4 (0xb78ab000)
        libkdeui.so.4 => /usr/kde/3.5/lib/libkdeui.so.4 (0xb75b6000)
        libkdesu.so.4 => /usr/kde/3.5/lib/libkdesu.so.4 (0xb759e000)
        libkwalletclient.so.1 => /usr/kde/3.5/lib/libkwalletclient.so.1 (0xb758c000)
        libkdecore.so.4 => /usr/kde/3.5/lib/libkdecore.so.4 (0xb7333000)
        libDCOP.so.4 => /usr/kde/3.5/lib/libDCOP.so.4 (0xb72fe000)
        libresolv.so.2 => /lib/libresolv.so.2 (0xb72eb000)
        libutil.so.1 => /lib/libutil.so.1 (0xb72e6000)
        libart_lgpl_2.so.2 => /usr/lib/libart_lgpl_2.so.2 (0xb72cd000)
        libidn.so.11 => /usr/lib/libidn.so.11 (0xb729d000)
        libkdefx.so.4 => /usr/kde/3.5/lib/libkdefx.so.4 (0xb726e000)
        libqt-mt.so.3 => /usr/qt/3/lib/libqt-mt.so.3 (0xb6b81000)
        libmng.so.1 => /usr/lib/libmng.so.1 (0xb6b1f000)
        libjpeg.so.62 => /usr/lib/libjpeg.so.62 (0xb6afd000)
        libXi.so.6 => /usr/lib/libXi.so.6 (0xb6af4000)
        libXrandr.so.2 => /usr/lib/libXrandr.so.2 (0xb6af0000)
        libXcursor.so.1 => /usr/lib/libXcursor.so.1 (0xb6ae6000)
        libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0xb6ae1000)
        libXinerama.so.1 => /usr/lib/libXinerama.so.1 (0xb6ade000)
        libXft.so.2 => /usr/lib/libXft.so.2 (0xb6ac8000)
        libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0xb6a97000)
        libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0xb6a23000)
        libexpat.so.0 => not found
        libpng.so.3 => /usr/lib/libpng.so.3 (0xb69fb000)
        libXext.so.6 => /usr/lib/libXext.so.6 (0xb69ec000)
        libSM.so.6 => /usr/lib/libSM.so.6 (0xb69e2000)
        libICE.so.6 => /usr/lib/libICE.so.6 (0xb69c9000)
        libpthread.so.0 => /lib/libpthread.so.0 (0xb69b6000)
        libXrender.so.1 => /usr/lib/libXrender.so.1 (0xb69ad000)
        libX11.so.6 => /usr/lib/libX11.so.6 (0xb68b2000)
        libXau.so.6 => /usr/lib/libXau.so.6 (0xb68af000)
        libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0xb68a9000)
        libdl.so.2 => /lib/libdl.so.2 (0xb68a5000)
        libz.so.1 => /lib/libz.so.1 (0xb6892000)
        libfam.so.0 => /usr/lib/libfam.so.0 (0xb6888000)
        libacl.so.1 => /lib/libacl.so.1 (0xb6881000)
        libattr.so.1 => /lib/libattr.so.1 (0xb687c000)
        libstdc++.so.6 => /usr/lib/gcc/i686-pc-linux-gnu/4.0.2/libstdc++.so.6 (0xb679d000)
        libm.so.6 => /lib/libm.so.6 (0xb6778000)
        libc.so.6 => /lib/libc.so.6 (0xb6657000)
        libexpat.so.0 => not found
        libexpat.so.0 => not found
        libexpat.so.1 => /usr/lib/libexpat.so.1 (0xb6635000)
        /lib/ld-linux.so.2 (0xb7f44000)


So there is an example of the problem.


(In reply to comment #9)
> (In reply to comment #8)
> > (In reply to comment #7)
> > > (In reply to comment #6)
> > > > Fixed with gentoolkit-0.2.2_pre4, please test and verify
> > > > 
> > > 
> > > No go..  I was having this issue so I did the emerge --sync and then emerged
> > > gentoolkit.  I ran it with -pv option and it found a butload of apps that were
> > > broken and then decided that it needed to rebuild openoffice-bin. 
> > 
> > revdep-rebuild does not work with binary ebuilds, that's really an unrelated
> > issue (see Bug 32276). 
> > 
> 
> Well,
> 
>      The important thing to gather from this is that revdep-rebuild did not
> find the offending library to recompile.  I attempeted no fix for the
> libexpat.so.0 problem.
> 
> Justace
> 

Comment 11 Paul Varner (RETIRED) gentoo-dev 2006-04-05 19:27:18 UTC
In order for me to debug what is failing with revdep-rebuild, I need you to run the following: 'bash -x /usr/bin/revdep-rebuild --ignore --keep-temp --library libexpat.so.0' then attach the output and the /root/.revdep-rebuild.* files to the case.
Comment 12 Paul Varner (RETIRED) gentoo-dev 2006-05-22 19:11:14 UTC
Unable to troubleshoot issue from comment #10 without the requested information. The fix for the double-slashes is in >=gentoolkit-0.2.2_pre4