Hi,
You will either need to load the dependent library by hand in the right
order or
write a rootmap file for each of your library.
For example the rootmap file for libDst would be a file name
libDst.rootmap (located
in the same directory as libDst.so) containing something like:
Library.MyClassName: libOtherLibrary.so
where libOtherLibrary.so is the name of the library where TDataBank is defined.
Cheers,
Philippe.
PS You can also generate the rootmap file automatically if you have
linkdef files
by using the rlibmap utility:
rlibmap
Usage: rlibmap [-f] [<-r|-o> <mapfile>] -l <sofile> -d <depsofiles> -c
<linkdeffiles>
Justin Findlay wrote:
> I'm trying to load a preexisting library into root, but I'm getting
> the following error:
>
> root [0] gSystem->Load("libDst");
> dlopen error: /home/findlay/src/croot/lib/libDst.so: undefined symbol:
> _ZNK9TDataBank5TDumpEPKc
> Load Error: Failed to load Dynamic link library
> /home/findlay/src/croot/lib/libDst.so
>
> I am unsure how to resolve this. The undefined symbol refers to
> another library in the same source tree. Do I need to add some
> compiler or linker flags, or manually account for all symbols used in
> the shared library somehow?
>
>
> Justin
>
>
Received on Fri Oct 10 2008 - 17:53:15 CEST
This archive was generated by hypermail 2.2.0 : Sat Oct 11 2008 - 05:50:03 CEST