Hello
I am trying to statically link Root. Unfortunately I can not use dynamically linked libraries.
I have compiled static root libraries using
make static
Specifying the following static libraries to the linker
/opt/simulation/root_5_32/lib/libRoot.a /opt/simulation/root_5_32/lib/liblzma.a
Static compilation works for a small program.
However, when I use the same procedure for a program using the MathMore library (specifically I need the Interpolator class and Minuit) compilation fails due to missing MathMore.
Additionally supplying -lMathMore succeeds in compiling but crashes on execution.
Checking with ldd for dynamic libraries indicates that Root is dynamically linked.
libCint.so => /opt/simulation/root_5_32/lib/libCint.so
libMathCore.so => /opt/simulation/root_5_32/lib/libMathCore.so
libMathMore.so => /opt/simulation/root_5_32/lib/libMathMore.so
libCore.so => /opt/simulation/root_5_32/lib/libCore.so
I presume having the libraries statically and dynamically linked leads to the crash.
Compiling/linking the program dynamically works flawlessly.
Is there a way around that?
What am I missing?
Best regards,
Hermann
DI Hermann Fuchs
Christian Doppler Laboratory for Medical Radiation Research for Radiation Oncology
Department of Radiation Oncology
Medical University Vienna
Währinger Gürtel 18-20
A-1090 Wien