The link command for modules receives a generic LIBS variable that contains more libraries that needed for some of the modules. As a result they are linked against libraries from which they do not use any symbol, resulting in unwanted dependencies. Any distribution that packages some modules separately may have undesired dependencies for those modules as a result.
I think that the LIBS varaible for modules should only contain the bare minimum (which is most likely only libc) and let the modules add the extra libs they need on a per module basis.
In the attached file you can see the extra unused libraries that a debian build has found for some of the modules packages separately.
Logged In: YES
user_id=337916
Originator: NO
Hi Dan,
there are actually two problems:
Some problems include to many libs in their makefile, i've fixed this for db_unixodbc.
This is not so easy to fix for perl and perlvdb, because they use perl tool to generate the dependencies.
The other one is, as you wrote, that the LIBS variable from the root Makefile contains to many libs. This is mainly an issue if you've enabled TLS, as you can see in your error log.
Henning
Logged In: YES
user_id=337916
Originator: NO
Hi, now fixed for carrierroute, h350 and db_berkeley.
Henning
Logged In: YES
user_id=337916
Originator: NO
Now also fixed for bdb_recover, the modules mi_xmlrpc, perlvdb and snmpstats remains.
I don't want to change them at the current state of development, as i don't have time to test them sufficiently. I think its ok to fix them in 1.5, decrease priority.
Henning
Another round of fixes in trunk, the modules perlvdb, perl and mi_xmlrpc remains.
Some fixes caused problems in several cases, because every distribution and some other OS (like solaris) have different dependencies and library configurations. So i'll close this one for now.