Bug 202330 - dia provided libdia has many of "undefined symbol"
Summary: dia provided libdia has many of "undefined symbol"
Keywords:
Status: CLOSED NEXTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: dia
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Hans de Goede
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2006-08-12 22:02 UTC by Michal Jaegermann
Modified: 2007-11-30 22:11 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2006-08-13 22:31:54 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Michal Jaegermann 2006-08-12 22:02:29 UTC
Description of problem:

After 'ldd -d -r dia/libdia.so' there is 478 of "undefined symbol"
messages.  It looks like that bulk of these missing symbols is
provided by libglib and libgtk.

Quoting
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=202256#c1
"The libraries work, but less efficiently than they could if they
were linked properly".

Version-Release number of selected component (if applicable):
dia-0.95-5.fc6

Comment 1 Hans de Goede 2006-08-13 21:49:29 UTC
Hmm,

I'm working on a fix for this for libdia.so

However the other.so files in %{_libdir}/dia also have weak symbols / non
complete linking. I don't know if this is a problem here since these are plugins
which gets opened with dlopen, not linked in.

Jakub can you help here, is adding all needed libs to the linking of the .so
beneficial if the resulting .so will only get dlopened? (Assuming this can be
done at all, the .so could need symbols from the app doing the dlopen itself).



Comment 2 Jakub Jelinek 2006-08-13 21:58:13 UTC
It depends.  If the symbols are versioned, then it is desirable to link against
the libraries that provide the versioned symbols.  Otherwise, for plugins there
is no special benefit, appart from guaranteeing that all the dependencies
needed for the plugin will be loaded.  But if you (or the API of the framework
that provides the plugin) reasoanbly guarantee that the dependencies are already
loaded by the main program or some of its dependencies, then plugins don't need
to satisfy -Wl,-z,defs checks.

Comment 3 Hans de Goede 2006-08-13 22:31:54 UTC
Jakub,

Thanks for the info.

A new version (0.95-6) with the weak symbols in libdia.so fixed should show up
on a mirror near you soon.



Note You need to log in before you can comment on or make changes to this bug.