Error building MathMore library

Hi,

I get the following message when ROOT tries to build the mathmore library.

[quote]make: *** No rule to make target /opt/local/include/gsl/gsl_math.h', needed bymathmore/src/Chebyshev.o’. Stop.
[/quote]

I’m using ROOT 5.18.00 and GSL version 1.11, on an intel iMac running OS X version 10.5.4.

The relevant output from configure is

[quote]Checking for gsl/gsl_version.h … /usr/local/include
Checking for GSL version >= 1.8 … ok
Checking for libgsl, gslML, or gsl … /usr/local/lib
Checking for libgslcblas, gslcblasML, gslcblas, or cblas … /usr/local/lib
Checking whether to build libMathMore … yes
Checking whether to build libMathCore … yes[/quote]

What I don’t understand is why make is looking in /opt/local (as far as I know this directory is the one used by MacPorts) when my GSL installation is in [quote]/usr/local[/quote] and configure knows this! Is this path hard-coded into the source of MathMore? gsl_math.h is present in [quote]/usr/local/include[/quote]

Has anyone seen this before? Any help would be appreciated.

Regards,

Hugh

Hi,

It might be that you re-using a directory where you build ROOT from another platform, is that possible? [In which case gmake distclean should solve the problem].

Cheers,
Philippe.

Yes! That solved it. Many thanks. I’d tried make clean but not make distclean. However now I have another problem.

MathCore loads fine but when I try to load the MathMore Library in CINT:

I get the following error message:

[quote]dlopen error: dlopen(/Applications/Scientific/ROOT/root/lib/libMathMore.so, 9): Symbol not found: _gsl_interp_cspline
Referenced from: /Applications/Scientific/ROOT/root/lib/libMathMore.so
Expected in: dynamic lookup

Load Error: Failed to load Dynamic link library /Applications/Scientific/ROOT/root/lib/libMathMore.so
(int)(-1)
*** Interpreter error recovered ***[/quote]

Is this some peculiarity of OSX, do I need to specify certain flags to configure or make to get the libraries to link properly? As a wild shot in the dark I tried making a symlink from libgsl.dylib to libgsl.so and doing:

but that produced this error message:

[quote]dlopen error: dlopen(/usr/local/lib/libgsl.so, 9): no suitable image found. Did find:
/usr/local/lib/libgsl.so: mach-o, but wrong architecture
/usr/local/lib/libgsl.so: mach-o, but wrong architecture
Load Error: Failed to load Dynamic link library /usr/local/lib/libgsl.so
(int)(-1)
*** Interpreter error recovered ***[/quote]

Again any help would be much appreciated.

Cheers,

Hugh

Could it be that ROOT is compiled with the -m64 flag whereas GSL is not?

It’s working now that I included -m64 with the CFLAGS for the GSL build.

It’s working now that I included -m64 with the CFLAGS for the GSL build.