azureus-bin-2.2.0.2.ebuild installs the following shared libs in /usr/lib: libswt-atk-gtk-3106.so libswt-awt-gtk-3106.so libswt-gtk-3106.so libswt-mozilla-gtk-3106.so libswt-pi-gtk-3106.so libswt-gnome-gtk-3106.so libswt-kde-gtk-3106.so These libs will produce revdep-rebuild -pv "dynamic linking consistency" errors depending on the system configuration. In my case, I do not have gnome or kde installed (GTK w/XFCE4 here) and revdep-rebuild -pv yields: ---revdev-rebuild -pv --------------------------------------------- Collecting system binaries and libraries... done. (/root/.revdep-rebuild.1_files) Collecting complete LD_LIBRARY_PATH... done. (/root/.revdep-rebuild.2_ldpath) Checking dynamic linking consistency... broken /usr/lib/libswt-gnome-gtk-3106.so (requires libgnomeui-2.so.0 libbonoboui-2.so.0 libgnomecanvas-2.so.0 libgnome-2.so.0 libbonobo-2.so.0 libgconf-2.so.4 libgnomevfs-2.so.0 libbonobo-activation.so.4 libORBit-2.so.0 liblinc.so.1) broken /usr/lib/libswt-kde-gtk-3106.so (requires libkdecore.so.4 libqt-mt.so.3 libkparts.so.2) done. (/root/.revdep-rebuild.3_rebuild) Assigning files to ebuilds... done. (/root/.revdep-rebuild.4_ebuilds) Evaluating package order... done. (/root/.revdep-rebuild.5_order) Dynamic linking on your system is consistent... All done. ---end------------------------------------------------------- These errors could be prevented by not installing (or deleting after the installation) those libraries that are unneeded. An extra USE flag "gnome" would be helpful. Again, in my case, USE flags -gnome -kde would cause deletion of libs: libswt-gnome-gtk-3106.so and libswt-kde-gtk-3106.so and thereby make revdep-rebuild -pv come up clean. Reproducible: Always Steps to Reproduce: 1.(example)install azureus-bin on gtk+ system without kde and revdep-revuild -pv 2.(example)install azureus-bin on kde system without gtk+ and revdep-revuild -pv 3. etc. Actual Results: revdep-rebuild -pv yields "Checking dynamic linking consistency..." errors on unused and unneeded libs installed by azureus-bin Expected Results: not install or delete unneeded libs during the installation based on USE flags. Some new USE flags would be helpful, e.g. gnome. Portage 2.0.51-r3 (default-linux/x86/2004.3, gcc-3.3.5, glibc-2.3.4.20040808-r1, 2.6.10-gentoo-r5 i686) ================================================================= System uname: 2.6.10-gentoo-r5 i686 Intel(R) Pentium(R) 4 CPU 2.40GHz Gentoo Base System version 1.4.16 Autoconf: sys-devel/autoconf-2.59-r5 Automake: sys-devel/automake-1.8.5-r1 Binutils: sys-devel/binutils-2.15.92.0.2-r1 Headers: sys-kernel/linux26-headers-2.6.8.1-r2 Libtools: sys-devel/libtool-1.5.2-r7 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-march=pentium4 -O2 -fomit-frame-pointer -pipe" CHOST="i686-pc-linux-gnu" COMPILER="" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-march=pentium4 -O2 -fomit-frame-pointer -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs autoconfig ccache distlocks sandbox sfperms" GENTOO_MIRRORS="http://mirror.datapipe.net/gentoo ftp://gentoo.mirrors.pair.com http://gentoo.ccccom.com" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage" USE="x86 X aalib alsa avi bitmap-fonts cdr cups divx4linux dvd dvdr encode gpm gtk gtk2 imlib jpeg mad mikmod mmx mpeg ncurses nls nptl oggvorbis opengl oss png python readline sdl slang sse sse2 ssl tcpd truetype xml2 xprint xv xvid zlib"
duplicate of bug #64446 ?
yes, but my bug report more accurately describes the problem and possible solution.
*** Bug 64446 has been marked as a duplicate of this bug. ***
*** Bug 92315 has been marked as a duplicate of this bug. ***
How about something like this (i'm looking at azureus-bin-2.3.0.2.ebuild now): src_unpack() { ... # remove libraries for which no support is indicated and which will # produce revdep-rebuild errors if present on systems without these # desktop environments installed if ! use kde; then rm ${MY_PN}/azureus/libswt-kde-gtk-3106.so fi if ! use gnome; then rm ${MY_PN}/azureus/libswt-gnome-gtk-3106.so fi ... } there's also the azureus/libswt-mozilla-gtk-3106.so lib which i think requires a Mozilla browser to be installed. i'll leave it to other to suggest a USE flag check for that one.
sejo is back now and i think he is the best person to decide about it. reassigning
I think this is the way to go and am willing to do the change if net-p2p gives me the permission.
This was my original bug report and, since so much time has passed, some alternatives have arisen that you may wish to consider first. In the latest (still masked 0.2.1_pre8) gentoolkit, they modified revdep-rebuild to include several new portage (/etc/make.conf) variables, one of which is: SEARCH_DIRS_MASK="< a list of directory paths for revdep-rebuild to ignore >" This was due to complaints, in general, about how revdep-rebuild presents errors on many different binary packages, e.g. open office, sun jdk and, yes, azureus-bin. I am now using the SEARCH_DIRS_MASK method to have revdep-rebuild ignore my binary stuff. It works well and you may consider simply printing some einfo's at the end of the az-bin installation advising the user to add, e.g. /use/lib/azureus to the SEARCH_DIR_MASK path in /etc/make.conf. Something to think consider. Phil
gentoolkit-0.2.1_pre9 supports the ability to have a file placed into /etc/revdep-rebuild to adjust revdep-rebuilds environment. For example, adding the file /etc/revdep-rebuild/10azureus-bin which contains the line SEARCH_DIRS_MASK="/usr/lib/azureus" will cause revdep-rebuild to ignore that directory when looking for broken dynamic linking. The intent for this directory is for package maintainers to have a place to adjust the behavior of revdep-rebuild.
This will be solved with the from sources version (dev-java/azureus) because it does not install any native code.
*** Bug 140413 has been marked as a duplicate of this bug. ***
(In reply to comment #10) > This will be solved with the from sources version (dev-java/azureus) because it > does not install any native code. azureus-bin removed from the tree so the revdep-rebuild errors are gone from the azureus part.