dynamically linked lib inter-dependency problem

From: Dave (davis_eric_at_yahoo.com)
Date: 05/15/04


Date: 14 May 2004 22:21:46 -0700

Hi,

Got some question regarding to the dlls under Unix/Linux.

I have a dll lib say libA.so and two other libs libB.so and libC.so.
They are created from different object files. The source codes of
libA.so use some class names and functions defined in libB.so and
libC.so. I can build libA.so, libB.so and libC.so individually without
cross-using the objects from other libs. For example, build libA.so
without using the object files in libB.so. However, when I use dlopen
to open libA.so, and use dlerror to check errors, I got some symbols
undefined. These symbols came from those object files used for libB.so
and libC.so. So, if I use those object files used for libB.so and
libC.so to build libA.so, dlerror will not complain anymore.

My question is can I really use those object files which are used to
create libB.so and libC.so to build libA.so? My understanding is dll's
should be independent from each other. My second questions is how
about the case when I don't have access to those object files used for
libB.so and libC.so, say they are vendor based libs and no object
files available?

The last thing is the above problem doesn't occur at all on solaris
platform but does occur on linux platform. Why?



Relevant Pages

  • dynamically linked lib inter-dependency problem
    ... I have a dll lib say libA.so and two other libs libB.so and libC.so. ... They are created from different object files. ... platform but does occur on linux platform. ...
    (comp.os.linux.development.system)
  • dynamically linked lib inter-dependency problem
    ... I have a dll lib say libA.so and two other libs libB.so and libC.so. ... They are created from different object files. ... platform but does occur on linux platform. ...
    (comp.unix.solaris)
  • dynamically linked lib inter-dependency problem
    ... I have a dll lib say libA.so and two other libs libB.so and libC.so. ... They are created from different object files. ... platform but does occur on linux platform. ...
    (comp.unix.questions)
  • dynamically linked lib inter-dependency problem
    ... I have a dll lib say libA.so and two other libs libB.so and libC.so. ... They are created from different object files. ... platform but does occur on linux platform. ...
    (comp.os.linux.misc)