Undefined non-weak symbol from rpmlint
Denis Leroy
denis at poolshark.org
Wed Sep 27 13:25:24 UTC 2006
Mamoru Tasaka wrote:
> I am currently reviewing toped :
> https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=208200
>
> In the review process, I checked the binary rpm rebuilt by rpmlint
> as "rpmlint toped-0.8.1-1.fc6.i386.rpm", and the result was clean.
> However, once I install toped and try "rpmlint toped", I get lots
> of "undefined non-weak symbol" complaint like:
>
> W: toped undefined-non-weak-symbol /usr/lib/libtpd_common.so.0.0.0 wxEVT_LOG_ERRMESSAGE
> W: toped undefined-non-weak-symbol /usr/lib/libtpd_common.so.0.0.0 CmdList
> W: toped undefined-non-weak-symbol /usr/lib/libtpd_common.so.0.0.0 wxEVT_FUNC_BROWSER
> W: toped undefined-non-weak-symbol /usr/lib/libtpd_DB.so.0.0.0 Properties
> W: toped undefined-non-weak-symbol /usr/lib/libtpd_DB.so.0.0.0 _ZNK5DBboxmlERK3CTM
> W: toped undefined-non-weak-symbol /usr/lib/libtpd_DB.so.0.0.0 _ZN8SGBitSetD1Ev
> W: toped undefined-non-weak-symbol /usr/lib/libtpd_DB.so.0.0.0 _ZN9polycross11segmentlistD1Ev
> ............................
>
> So my question is:
> A. why is these complaints suppressed by "rpmlint ***.i386.rpm" ? Is this a default
> of rpmlint?
> B. Are these complaints BLOCKERs for approving this package?
A: undefined non weak symbol means the dynamic library was not compiled
with all its dependent libraries on the link line. It should be avoided
if possible, but is not a blocking problem. These warnings can be
difficult to avoid sometimes, especially if it involves a lot of
reorganization of the autoconf/automake system, which is difficult to do
with patches. It certainly should be reported upstream.
The best way to approach it is to determine where the missing symbols
come from. Sometimes, it's really just a missing '-lfoo' on the link
line. Also, does it prevent the application from working correctly ?
i.e. when it loads the libtpd_* libs, can it always resolve the missing
syms ?
B: should not be blockers imo, though there is a cost associated with
those warnings: the startup time of the application will be a bit slower
as the dynamic linker has to resolve the missing deps at launch time.
Let me know if you need more help, I'll try to take some time to look at it.
More information about the fedora-extras-list
mailing list