Am 23.11.2011 22:35, schrieb Michael Hertling:
Out of curiosity - I have not worked with RPM for ages: Are these
warnings and the related overlinking due to transitive dependencies
really an issue or just an inconvenience? Personally, I distinguish
between real overlinking, i.e. pulling in libraries not used at all,
and formal overlinking by DT_NEEDED tags for mediate prerequisites,
or in other words: Real overlinking means the dependency graph has
unnecessary nodes, and formal overlinking means is has unnecessary
edges. Of course, the former is a real penalty, but is the latter
also bad? If an executable X is linked against a shared library B,
and B against a shared A, is it really critical if A explicitly
appears among the dependencies of X, as A *is* needed for X?
Perhaps, you can share some experiences from your practice.

Note that Debian also warn about this.
The issue is the packaging in distributions. When application A depends on library B (which depends on library C) but links to both B and C, you have to rebuild A and B when the ABI of C changes. If A only links to B, only B has to be rebuilt and the distribution user has to download far less. So it is an optimisation of many ressources which consumes less energy -> good :-)

BTW: linking plugins against an executable is really not good style. Put the common part into a library and link the executable and the plugin against that library.

HS

--

Powered by www.kitware.com

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake

Reply via email to