Bug 209912

Summary: rpmlint warnings after installation: unused-direct-shlib-dependency
Product: [Applications] skrooge Reporter: Thomas Janssen <thomasj>
Component: generalAssignee: Guillaume DE BURE <guillaume.debure>
Status: RESOLVED FIXED    
Severity: normal CC: kde, stephane
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Fedora RPMs   
OS: Linux   
Latest Commit: Version Fixed In:

Description Thomas Janssen 2009-10-08 21:24:02 UTC
Version:           0.5.2 (using KDE 4.3.1)
OS:                Linux
Installed from:    Fedora RPMs

[thomas@tusdell ~]$ rpmlint skrooge skrooge-libs skrooge-debuginfo
skrooge-libs.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libskgbasegui.so.0.5.2 /usr/lib64/libQtDesigner.so.4
skrooge-libs.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libskgbasegui.so.0.5.2 /usr/lib64/libkfile.so.4
skrooge-libs.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libskgbasegui.so.0.5.2 /usr/lib64/libQtNetwork.so.4
skrooge-libs.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libskgbasegui.so.0.5.2 /usr/lib64/libQtDBus.so.4
skrooge-libs.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libskgbasegui.so.0.5.2 /lib64/libpthread.so.0
skrooge-libs.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libskgbankgui.so.0.5.2 /usr/lib64/libQtSql.so.4
skrooge-libs.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libskgbankgui.so.0.5.2 /usr/lib64/libQtDesigner.so.4
skrooge-libs.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libskgbankgui.so.0.5.2 /usr/lib64/libkparts.so.4
skrooge-libs.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libskgbankgui.so.0.5.2 /usr/lib64/libkfile.so.4
skrooge-libs.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libskgbankgui.so.0.5.2 /usr/lib64/libkio.so.5
skrooge-libs.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libskgbankgui.so.0.5.2 /usr/lib64/libQtNetwork.so.4
skrooge-libs.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libskgbankgui.so.0.5.2 /usr/lib64/libQtDBus.so.4
skrooge-libs.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libskgbankgui.so.0.5.2 /lib64/libpthread.so.0
skrooge-libs.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libskgbankgui.so.0.5.2 /usr/lib64/libQtSvg.so.4
skrooge-libs.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libskgbankgui.so.0.5.2 /lib64/libm.so.6
skrooge-libs.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libskgbankmodeler.so.0.5.2 /usr/lib64/libQtSql.so.4
skrooge-libs.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libskgbankmodeler.so.0.5.2 /lib64/libpthread.so.0
skrooge-libs.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libskgbankmodeler.so.0.5.2 /usr/lib64/libQtDBus.so.4
skrooge-libs.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libskgbankmodeler.so.0.5.2 /usr/lib64/libQtSvg.so.4
skrooge-libs.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libskgbasemodeler.so.0.5.2 /usr/lib64/libkdeui.so.5
skrooge-libs.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libskgbasemodeler.so.0.5.2 /lib64/libpthread.so.0
skrooge-libs.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libskgbasemodeler.so.0.5.2 /usr/lib64/libQtDBus.so.4
skrooge-libs.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libskgbasemodeler.so.0.5.2 /usr/lib64/libQtSvg.so.4
skrooge-libs.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libskgbasemodeler.so.0.5.2 /lib64/libm.so.6
skrooge-libs.x86_64: W: no-documentation
3 packages and 0 specfiles checked; 0 errors, 25 warnings.
[thomas@tusdell ~]$ rpmlint -I unused-direct-shlib-dependency
unused-direct-shlib-dependency:
The binary contains unused direct shared library dependencies.  This may
indicate gratuitously bloated linkage; check that the binary has been linked
with the intended shared libraries only.
Comment 1 Stephane MANKOWSKI 2009-10-09 15:45:58 UTC
Hi thomas,

Could you try something like this to build skrooge and tell me if it's better ?

cmake . -DCMAKE_SHARED_LINKER_FLAGS="-Wl,--as-needed"

I am waiting your answer ?
Comment 2 Thomas Janssen 2009-10-09 16:46:57 UTC
Hello Stephane,

yes, that fixes it. You're really fast. As always.
Comment 3 Stephane MANKOWSKI 2009-10-09 18:23:05 UTC
SVN commit 1033170 by smankowski:

BUG: 209912: rpmlint warnings after installation: unused-direct-shlib-dependency

 M  +1 -0      CHANGELOG  
 M  +2 -2      CMakeLists.txt  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1033170
Comment 4 Christoph VogtlÃĪnder 2009-10-15 03:34:38 UTC
This breaks linking on OS X:
Linking CXX shared library ../lib/libskgbasemodeler.dylib
ld: unknown option: --as-needed
collect2: ld returned 1 exit status
make[2]: *** [lib/libskgbasemodeler.0.5.3_beta.dylib] Error 1
make[1]: *** [skgbasemodeler/CMakeFiles/skgbasemodeler.dir/all] Error 2
make: *** [all] Error 2

Should I fill in a new bug report or reopen this one?
Comment 5 Thomas Janssen 2009-10-15 12:13:53 UTC
Hmm.. It builds fine here in mock/koji (our buildsystem) for x86, x86_64, ppc and ppc64.
Comment 6 Stephane MANKOWSKI 2009-10-15 21:45:18 UTC
SVN commit 1035750 by smankowski:

BUG: 209912: Remove correction for MACOS. rpmlink correction must be done with: cmake . -DCMAKE_SHARED_LINKER_FLAGS="-Wl,--as-needed"

 M  +1 -1      CMakeLists.txt  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1035750