On Debian Lenny (502) the cernlib command coming with the OS is broken.
It does not list any of the cernlib libs, only the secondary/system libs.
The symptom is that the building of the examples break:
make[1]: Entering directory `/home/vivian/iAIDA-1.0.17/examples'
g++ -fPIC -pthread -g -I../include -I../include/Boost-1.33.1 -I../include -c exaH1.cpp -o exaH1.o
g++ -fPIC -pthread -g exaH1.o -I../include -I../include/Boost-1.33.1 -I../include -L/home/vivian/iAIDA-1.0.17/lib -liAIDA -L//usr/lib -Wl,-static -Wl,-dy -lnsl -lcrypt -ldl -lgfortran -L/usr/lib/gcc/i486-linux-gnu/4.3 -lgfortran -L/usr/lib -L../lib -liAIDA -lexpat -lz -pthread -ldl -o exaH1
/home/vivian/iAIDA-1.0.17/lib/libiAIDA.so: undefined reference to `hmdir_'
/home/vivian/iAIDA-1.0.17/lib/libiAIDA.so: undefined reference to `hgiven_'
/home/vivian/iAIDA-1.0.17/lib/libiAIDA.so: undefined reference to `hbarx_'
...
As a workaround, replacing the CERN_LIB in the "ifdef HAVE_CERN" section
of the src/Makefile (around line 117) by "CERN_LIB=-lpacklib" works. This edit
needs to be done after the call to configure.
First reported by Vivian Wang (Aug 23, 2009).
closed this old comment