H2root cannot be compiled

I cannot compile h2root.

This is installation on 32 bit openSUSE 10.3, with gcc version 4.2.1, gfortran version 4.2, ROOT version 5.17.04g.

I have downloaded libpacklib.a and libkernlib.a from

cernlib.web.cern.ch/cernlib/down … _gcc4/lib/

./configure tells

./configure --with-cern-libdir=/cernlib_for_root/32/v_2006 --disable-rfio --disable-ldap --disable-xrootd

Checking for libpacklib_noshift, libpacklib, packmd, or packlib … /cernlib_for_root/32/v_2006
Checking for libkernlib_noshift, libkernlib, kernmd, or kernlib … /cernlib_for_root/32/v_2006
Checking for rfio in /cernlib_for_root/32/v_2006/libpacklib.a … no

Enabled support for asimage, astiff, builtin_afterimage, builtin_freetype, builtin_pcre, builtin_zlib, cern, cintex, exceptions, krb5, mathcore, mysql, opengl, pch, pgsql, reflex, shadowpw, shared, ssl, xft, xml.

But the ROOT source compilation fails with

g++ -m32 -O2 -o bin/g2root main/src/g2root.o
-L/cernlib_for_root/32/v_2006 -L/cernlib_for_root/32/v_2006 -lpacklib -lkernlib
-lgfortran -lgfortranbegin -lnsl -lm -ldl -pthread -rdynamic
/cernlib_for_root/32/v_2006/libpacklib.a(hlimit.o): In function hlimit_': /scratch/cernlib/2006/slc4_ia32_gcc4/src/packlib/hbook/code/hlimit.F:88: undefined reference to_gfortran_copy_string’

Did I pick up the correct libpacklib.a and libkernlib.a? The files from previous years also do not work.

This is not a compilation problem, but a linking problem.
You have to find out in which system library (fortran) this missing reference is.


Thank you. I have looked in libraries of several Fortran’s versions. The symbol _gfortran_copy_string existed only in one Fortran compiler’s library: gfortran version 4.1.3. (The latest version of the compiler is 4.2.1, and that symbol is not there).

So I installed the gfortran 4.1.3. In addidtion, it was necessary to copy (or link) two library files libgfortranbegin.a and libgfortran.a to the directory where the CERN library files libkernlib.a and libpacklib.a resided.

After that, my ROOT installation with h2root was successful.