Hi Volker, The problem you are reporting in 3.02/03 was solved in 3.02/04. 2001-11-14 18:20 rdm * cint/src/: init.c, newlink.c: fix for endless loop at startup in CINT. By Philippe Canal. Rene Brun Volker Hejny wrote: > > Hi all, > > I have a ugly problem here and since there are some really experienced > users on this list, I hope someone can give me some advice how to proceed. > > I'm using root 3.02.03 and a Debian 'woody' Linux with kernel 2.4.12. > > We are building some classes to manage reading from a local DAQ format > into TObject based data classes together with a few classes doing the > administration. To test these classes, I have a macro and some > main function containing essentially the same code: opening the > file and do an event loop. I don't want to go into detail, because > I think my problem is a more basic one. I would really be happy to > get some hint where to start debugging. > > What happens? The macro runs fine in an interactive root session loading > the shared library containing our classes before. Linking a stand-alone > program with the same library and all Root libraries given by > 'root-config --libs', the program does ... nothing but using 100% > CPU time. Even the first line in the main function is not executed!!! > I never saw this problem with any other program before (Root-based or > not). In the beginning, when my own classes where nearly empty, > the program runs. I'm not aware of any non-trivial change in the code. > > Running debugger, doing a CTRL-C and a backtrace gives (what does this > error means?): > (gdb) run > Starting program: /home/hejny/S/RootSorter/bin/test_revent > Error while mapping shared library sections: > libGlobal.so: Success. > > Program received signal SIGINT, Interrupt. > 0x40551d95 in G__isenclosingclass () > from /usr/local/packages/root/root_cvs/lib/libCint.so > [This position is always the same on CTRL-C.] > (gdb) backtrace > #0 0x40551d95 in G__isenclosingclass () > from /usr/local/packages/root/root_cvs/lib/libCint.so > #1 0x405522a0 in G__defined_tagname () > from /usr/local/packages/root/root_cvs/lib/libCint.so > #2 0x40552683 in G__search_tagname () > from /usr/local/packages/root/root_cvs/lib/libCint.so > #3 0x40515e0e in G__get_linked_tagnum () > from /usr/local/packages/root/root_cvs/lib/libCint.so > #4 0x40cf5a20 in ?? () > #5 0x40cf80a4 in ?? () > #6 0x40506d48 in G__call_setup_funcs () > from /usr/local/packages/root/root_cvs/lib/libCint.so > #7 0x40d04b29 in ?? () > #8 0x40cf8167 in ?? () > #9 0x40cf8206 in ?? () > #10 0x40d029c7 in ?? () > #11 0x40ceb2ca in ?? () > #12 0x4000b057 in call_init () from /lib/ld-linux.so.2 > #13 0x4000b1ad in _dl_init () from /lib/ld-linux.so.2 > > > A strace gives the following output: > > execve("/home/hejny/S/RootSorter/bin/test_revent", ... > [...] > brk(0) = 0x804d564 > open("/usr/local/packages/root/root_cvs/lib/libCore.so", O_RDONLY) = 3 > read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\220\306"..., 1024) = 1024 > fstat64(0x3, 0xbfffe6bc) = 0 > old_mmap(NULL, 4794164, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x40016000 > mprotect(0x40358000, 1378100, PROT_NONE) = 0 > old_mmap(0x40358000, 933888, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x341000) = 0x40358000 > old_mmap(0x4043c000, 444212, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x4043c000 > close(3) = 0 > [... same for Cint, Hist, Graf, Graf3d, GPad, Tree, Rint, Postscript > Matrix, Physics for Root ...] > [... loading nsl, dl ...] > [... next my library ...] > open("libGlobal.so", O_RDONLY) = 3 > read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\340\246"..., 1024) = 1024 > fstat64(0x3, 0xbfffe5ec) = 0 > getcwd("/home/hejny/S/RootSorter", 128) = 25 > old_mmap(NULL, 327940, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x40cd3000 > mprotect(0x40d10000, 78084, PROT_NONE) = 0 > old_mmap(0x40d10000, 81920, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x3c000) = 0x40d10000 > close(3) = 0 > [... loading libstdc++, libm, libc ...] > [... and then ... > brk(0) = 0x804d564 > brk(0x804d584) = 0x804d584 > brk(0x804e000) = 0x804e000 > brk(0x8058000) = 0x8058000 > brk(0x8059000) = 0x8059000 > brk(0x805c000) = 0x805c000 > brk(0x805f000) = 0x805f000 > brk(0x8062000) = 0x8062000 > brk(0x8063000) = 0x8063000 > brk(0x8066000) = 0x8066000 > brk(0x8069000) = 0x8069000 > brk(0x806a000) = 0x806a000 > brk(0x806d000) = 0x806d000 > brk(0x8070000) = 0x8070000 > brk(0x8073000) = 0x8073000 > brk(0x8076000) = 0x8076000 > brk(0x8079000) = 0x8079000 > brk(0x807c000) = 0x807c000 > brk(0x807f000) = 0x807f000 > brk(0x8080000) = 0x8080000 > brk(0x8083000) = 0x8083000 > brk(0x8086000) = 0x8086000 > brk(0x8087000) = 0x8087000 > brk(0x808a000) = 0x808a000 > brk(0x808d000) = 0x808d000 > [... here it stops, CPU = 100% from that point on, memory = constant ...] > > Best regards, > Volker > > -- > Dr. Volker Hejny Tel: 02461/616853 ** > Institut f. Kernphysik Fax: 02461/613930 ** > ---------------------------------------------------------------- ** ** --- > Forschungszentrum Juelich GmbH, D-52425 Juelich **
This archive was generated by hypermail 2b29 : Tue Jan 01 2002 - 17:51:09 MET