Re: [ROOT] seg fault in CINT while loading DLLs

From: François Mauger (mauger@caelav.in2p3.fr)
Date: Wed Feb 19 2003 - 09:42:02 MET


Hi Rene,

I did what you suggested.
gdb root
(gdb) run
(gdb) ...
root [0] .x test1.C      <--- this script loads the libNEATCore.so
Note: File "iostream.h" already loaded
Welcome in the 'test1.C' ROOT script!
Dummy is = 7             // TNEATObject: ctor/Get/Set are ok!
Bye!
root [1] gSystem->Load("../RawData/lib/libNEATRawData.so");
dlopen error:
/home/fmauger/private/nemo3/neat-140203/api/test/./../RawData/lib/libNEATRawData.so:
undefined symbol: ShowMembers__10TNEATEventR16TMemberInspectorPc
Load Error: Failed to load Dynamic link library
/home/fmauger/private/nemo3/neat-140203/api/test/./../RawData/lib/libNEATRawData.so
*** Interpreter error recovered ***
root [2] .q

Program exited normally.
(gdb) bt
No stack.
(gdb)

It gave me some hint...
And after a while I found a very very very stupid error
in my makefile.
I was building libNEATRawData.C/.h/.o
using the first LinkDef.h found by rootcint with the -I<some_path>
switch. Unfortunately that was the bad LinkDef.h, the one for
my first lib libNEATCore.
The result was an ununderstandable mess in *Dict.C/.h:
duplicata of the NEATCore dictionnary or something similar...and
missing dictionnary for the NEATRawData stuff!

Now I force the right LinkDef.h
and I succedded to create a first TNEATRawEvent with CINT.

Thanks for all
frc
--
François Mauger



This archive was generated by hypermail 2b29 : Thu Jan 01 2004 - 17:50:09 MET