Hi, Philippe Canal <pcanal@fnal.gov> wrote concerning RE: [ROOT] Crashing before main() [Wed, 19 May 2004 16:01:14 -0500] ---------------------------------------------------------------------- > Hi, > > Indeed, the most likely cause is a load ordering issue. A long time ago, I had a similar problem that was bothering me a lot. I was trying to run a small program that used a third-party, proprietary, binary-only, library - it kept SIGSEGV even before I could break into main. Well, it turned out, that the third-party library I was linking against, was compiled with another (and incompatible) compiler than the one I was using (I think it was EGCS vs. GCC - yes, that long time ago :-). I solved the problem by using the compiler used to build the third-party library. So, I guess you should check Mico and see if it's build with the same compiler as you build ROOT and your application with. > Surprisingly (actually I think this is a compiler error), gSystem > must be neither zero nor a valid value. What about NULL? > You could assert this 'guess' by putting a fprintf(stderr,"0x%x\n",gSystem); > in TTimer::Reset(). Why not std::cout << "0x" << std::hex << gSystem << std::endl; :-) > You may also want to check that ldd esmd returns the expected libraries. This may also give you a hint of what I was talking about. You can also check nm -C <path to lib>/libmico.so (or what ever it's called) and see what kind of GCC was used (the symbols are obvious). > > Cheers, > Philippe. > > -----Original Message----- > From: owner-roottalk@pcroot.cern.ch > [mailto:owner-roottalk@pcroot.cern.ch]On Behalf Of Mathes, Hermann-Josef > Sent: Monday, May 10, 2004 10:46 AM > To: roottalk@cern.ch > Cc: Mathes, Hermann-Josef; kopmann@ik.fzk.de; > michael.funcke@physik.uni-wuppertal.de > Subject: [ROOT] Crashing before main() > > > Dear Rooters, > > I have a problem in a large application coming probably from some dynamic library incompatibilities. > > The program is crashing before main() is executed. > > I am using the following 'environment': > - SuSE Linux 7.3 with gcc 2.95.3 and kernel 2.4.10 > - root 3.05.07, generated with the options: > "./configure linux --enable-table --enable-thread --enable-soversion" > - Mico 2.3.0 (a free CORBA implementation) > - Entire-X 6.1.1 (DCOM for Linux/Unix) + OCSLTK 1.1 (this is an OPC=OLE for > Process Control built on top of DCOM) > > The problem persits independent from the fact if a TROOT object is created. Im not using any ROOT classes (like TObject & Co. or TSocket) simply the dictionary compiled into one of my own libs. > > Using this rather 'old' releases is done for technical (hardware & driver compatibility) reasons. > > The DCOM-stuff is using threads (intrinsically for IUnknown derived client side interfaces=callbacks). > > This is the error I get (with/without debugger): > > mathes@ikauger2:~/FD-DAS/Eye/Esm/daemon> esmd > Segmentation fault > mathes@ikauger2:~/FD-DAS/Eye/Esm/daemon> gdb esmd > GNU gdb 20010316 > CThis GDB was configured as "i386-suse-linux"... > (gdb) r > Starting program: /home/mathes/FD-DAS/Eye/Esm-devel/daemon/esmd > [New Thread 1024 (LWP 4509)] > > Program received signal SIGSEGV, Segmentation fault. > [Switching to Thread 1024 (LWP 4509)] > 0x410547b1 in TTimer::Reset () from /usr/local/root-3.05.07/lib/libCore.so.3.05 > (gdb) back > #0 0x410547b1 in TTimer::Reset () > from /usr/local/root-3.05.07/lib/libCore.so.3.05 > #1 0x41054317 in TTimer::TTimer () > from /usr/local/root-3.05.07/lib/libCore.so.3.05 > #2 0x41054b8e in __static_initialization_and_destruction_0 () > from /usr/local/root-3.05.07/lib/libCore.so.3.05 > #3 0x41054e12 in global constructors keyed to TTimer::TTimer () > from /usr/local/root-3.05.07/lib/libCore.so.3.05 > #4 0x412d8f27 in __do_global_ctors_aux () > from /usr/local/root-3.05.07/lib/libCore.so.3.05 > #5 0x40fe4452 in _init () from /usr/local/root-3.05.07/lib/libCore.so.3.05 > #6 0x4000b7a7 in call_init () from /lib/ld-linux.so.2 > #7 0x4000b900 in _dl_init () from /lib/ld-linux.so.2 > (gdb) > > Thanks for any help or proposal to solve the problem. > Regards > Hermann-Josef Yours, ___ | Christian Holm Christensen |_| | ------------------------------------------------------------- | | Address: Sankt Hansgade 23, 1. th. Phone: (+45) 35 35 96 91 _| DK-2200 Copenhagen N Cell: (+45) 24 61 85 91 _| Denmark Office: (+45) 353 25 404 ____| Email: cholm@nbi.dk Web: www.nbi.dk/~cholm | |
This archive was generated by hypermail 2b29 : Sun Jan 02 2005 - 05:50:08 MET