The h2root program from version 5.22.00 of ROOT crashes
while old version works fine (eg. with 5.18.00d):
h2root ped_7072.rz
*** Break *** segmentation violation
(no debugging symbols found)
Using host libthread_db library “/lib64/tls/libthread_db.so.1”.
Attaching to program: /proc/17032/exe, process 17032
(no debugging symbols found)…done.
(no debugging symbols found)…done.
(no debugging symbols found)…done.
(no debugging symbols found)…done.
(no debugging symbols found)…done.
(no debugging symbols found)…done.
(no debugging symbols found)…done.
(no debugging symbols found)…done.
(no debugging symbols found)…done.
[Thread debugging using libthread_db enabled]
[New Thread 182954234432 (LWP 17032)]
(no debugging symbols found)…done.
(no debugging symbols found)…done.
0x000000375d78f504 in waitpid ()
from /lib64/tls/libc.so.6 #1 0x000000375d739a1f in do_system () from /lib64/tls/libc.so.6 #2 0x0000002a957c30ab in TUnixSystem::StackTrace ()
from /usr/local/root/root_v5.22.00/root//lib/root/libCore.so #3 0x0000002a957bfc7a in TUnixSystem::DispatchSignals ()
from /usr/local/root/root_v5.22.00/root//lib/root/libCore.so #4 #5 0x0000002a984b1927 in mzstor_ ()
from /usr/local/root/root_v5.22.00/root//lib/root/libminicern.so #6 0x0000002a984b12ae in mzpaw_ ()
from /usr/local/root/root_v5.22.00/root//lib/root/libminicern.so #7 0x0000002a984a653c in hlimit_ ()
from /usr/local/root/root_v5.22.00/root//lib/root/libminicern.so #8 0x00000000004042fe in main ()
gdb which h2root
GNU gdb Red Hat Linux (6.3.0.0-1.143.el4rh)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type “show copying” to see the conditions.
There is absolutely no warranty for GDB. Type “show warranty” for details.
This GDB was configured as “x86_64-redhat-linux-gnu”…(no debugging symbols found)
Using host libthread_db library “/lib64/tls/libthread_db.so.1”.
(gdb) run ped_7072.rz
Starting program: /afs/in2p3.fr/system/amd64_sl4/usr/local/root/root_v5.22.00/root/bin/h2root ped_7072.rz
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
[Thread debugging using libthread_db enabled]
[New Thread 182954234432 (LWP 17182)]
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 182954234432 (LWP 17182)]
0x0000002a984b1927 in mzstor_ () from /usr/local/root/root_v5.22.00/root//lib/root/libminicern.so
(gdb) where #0 0x0000002a984b1927 in mzstor_ () from /usr/local/root/root_v5.22.00/root//lib/root/libminicern.so #1 0x0000002a984b12ae in mzpaw_ () from /usr/local/root/root_v5.22.00/root//lib/root/libminicern.so #2 0x0000002a984a653c in hlimit_ () from /usr/local/root/root_v5.22.00/root//lib/root/libminicern.so #3 0x00000000004042fe in main ()
(gdb)
Note that h2root v5.22.00 is using some shared librairies which are not used by h2root v5.18.0d:
You said it was working before ? was it also on a 64 bits machine ?
In the past h2root was directly linked with cernlib. Now we have extracted the needed code in a " mini cernlib" library. I thought that relinking back with cernlib would have make it work (on 64 bits) but it does not. It still crashes (in a different way). So that is why I am asking you what kind of machine you where using (32 or 64 bits) when it worked for you ?
You said it was working before ? was it also on a 64 bits machine ?
Yes it works well with a previous version of ROOT (eg. 5.18.00d) compiled on a 64 bits, but fails with versions >= 5.20.00 (have a look on my first message):
I forgot to tell you that h2root (version 5.22) had not been compiled by default (it was not in <path_to_root>/bin) since f77 had not been found by the configure script… I had to help it a little bit by using option --with-f77=/usr/bin/g77 (cf. file <path_to_root/main/Module.mk).
GNU Fortran comes with NO WARRANTY, to the extent permitted by law.
You may redistribute copies of GNU Fortran
under the terms of the GNU General Public License.
For more information about these matters, see the file named COPYING
or type the command `info -f g77 Copying’.
[xxxxx-21:18:12] > fs sysname
Current sysname is ‘amd64_sl4’
[xxxxx-21:18:23] > uname -a
Linux xxxxx 2.6.9-55.0.9.ELsmp #1 SMP Fri Sep 28 09:24:48 CDT 2007 x86_64 x86_64 x86_64 GNU/Linux
[quote=“couet”]I have no problem on lxplus . Typing " make" build h2root but gfortran is used not g77.
(ask Fons Rademakers for Makefile questions)[/quote]
I just tried with gfortran (instead of g77), but if failed too:
h2root /scratch/ycalas/ped_7072.rz
*** Break *** segmentation violation
(no debugging symbols found)
Using host libthread_db library “/lib64/tls/libthread_db.so.1”.
Attaching to program: /proc/32723/exe, process 32723
(no debugging symbols found)…done.
(no debugging symbols found)…done.
(no debugging symbols found)…done.
(no debugging symbols found)…done.
(no debugging symbols found)…done.
(no debugging symbols found)…done.
(no debugging symbols found)…done.
(no debugging symbols found)…done.
(no debugging symbols found)…done.
[Thread debugging using libthread_db enabled]
[New Thread 182954683584 (LWP 32723)]
(no debugging symbols found)…done.
0x0000003da8b8f504 in waitpid () from /lib64/tls/libc.so.6 #1 0x0000003da8b39a1f in do_system () from /lib64/tls/libc.so.6 #2 0x0000002a957c40ab in TUnixSystem::StackTrace ()
from /scratch/ycalas/TMP/ROOT//lib/root/libCore.so #3 0x0000002a957c0c7a in TUnixSystem::DispatchSignals ()
from /scratch/ycalas/TMP/ROOT//lib/root/libCore.so #4 #5 0x0000002a984c2a0f in mzstor_ ()
from /scratch/ycalas/TMP/ROOT//lib/root/libminicern.so #6 0x0000002a984c2e2f in mzpaw_ ()
from /scratch/ycalas/TMP/ROOT//lib/root/libminicern.so #7 0x0000002a984aedcc in hlimit_ ()
from /scratch/ycalas/TMP/ROOT//lib/root/libminicern.so #8 0x00000000004042fe in main ()
I am still working on that. I have not found the solution yet. I see that the prebuild version 5.18 is working. I did not succeed yet to rebuilt a working version using cernlib. I had no time today to look at it.
[quote=“couet”]Hi Yvan,
Sorry, I forgot to tell you here that, as Rene said, it should now work.
Cheers, Olivier[/quote]
Ok, so if I understand well, it should only work with the development version of ROOT, ie. 5.23/02. Probably better to wait the production one in June then