sousasag / ARES

ARES - Automatic Routine for line Equivalent widths in stellar Spectra
11 stars 3 forks source link

gsl implicit declaration of function #7

Closed MariaTsantaki closed 7 years ago

MariaTsantaki commented 7 years ago

Hi Sergio,

I get this error when installing : areslib.h:601:3: warning: implicit declaration of function ‘gsl_multifit_fdfsolver_jac’ [-Wimplicit-function-declaration]

To solve: cp areslib_gsl1.h areslib.h (I don't know how areslib_gsl1.h is created)

sousasag commented 7 years ago

Hi,

This is not an error, is a warning!

What is the issue? Is there a error, does it compile. What is the gsl version that you have in your system?

MariaTsantaki commented 7 years ago

I could not compile. My version is 2.1

I am only mentioning in case anyone else gets the same problem. :)

sousasag commented 7 years ago

Sure, no problem. I need more information. Can you do:

make clean; cp areslib_gsl2.h areslib.h; make; ls -lrt

And show me the output of these commands. Your original message is a warning. It should not prevent from compiling...

MariaTsantaki commented 7 years ago

Output: rm -f ARES test.ares gcc -o ARES ARES_v2.c -lcfitsio -lgsl -lgslcblas -lm -lgomp -fopenmp In file included from ARES_v2.c:47:0: areslib.h: In function ‘fitngauss’: areslib.h:601:3: warning: implicit declaration of function ‘gsl_multifit_fdfsolver_jac’ [-Wimplicit-function-declaration] gsl_multifit_fdfsolver_jac(s, J); ^ /tmp/ccpWpA6S.o: In function fitngauss': ARES_v2.c:(.text+0x692b): undefined reference togsl_multifit_fdfsolver_jac' collect2: error: ld returned 1 exit status makefile:2: recipe for target 'install' failed make: *** [install] Error 1 total 1608 -rw-rw-r--. 1 paranoia paranoia 15990 Jan 24 16:53 README.md -rw-rw-r--. 1 paranoia paranoia 7324 Jan 24 16:53 ARES_v2.c -rw-rw-r--. 1 paranoia paranoia 21718 Jan 24 16:53 areslib_gsl1.h -rw-rw-r--. 1 paranoia paranoia 5318 Jan 24 16:53 sn_rejt_estimator.h -rw-rw-r--. 1 paranoia paranoia 7602 Jan 24 16:53 rvcor.h -rw-rw-r--. 1 paranoia paranoia 2052 Jan 24 16:53 ngaussfdf.h -rw-rw-r--. 1 paranoia paranoia 226 Jan 24 16:53 mine.opt -rw-rw-r--. 1 paranoia paranoia 166 Jan 24 16:53 makefile -rw-rw-r--. 1 paranoia paranoia 4482 Jan 24 16:53 linelist.dat -rw-rw-r--. 1 paranoia paranoia 122 Jan 24 16:53 lambda_rejt.opt -rw-rw-r--. 1 paranoia paranoia 11296 Jan 24 16:53 filesio.h -rw-rw-r--. 1 paranoia paranoia 5749 Jan 24 16:53 aresplot.h -rw-rw-r--. 1 paranoia paranoia 21793 Jan 24 16:53 areslib_gsl2.h -rw-rw-r--. 1 paranoia paranoia 10000 Jan 24 16:53 test.ares_ori -rw-rw-r--. 1 paranoia paranoia 1474560 Jan 24 16:53 sun_harps_ganymede.fits -rw-rw-r--. 1 paranoia paranoia 21793 Jan 25 12:47 areslib.h

sousasag commented 7 years ago

Time to check version of gsl library. What linux system do you have, if debian like, please show me the output if this:

dpkg -l | grep libgsl

For me I got this:

ii  libgsl-dev                                  2.1+dfsg-2                                    amd64        GNU Scientific Library (GSL) -- development package
ii  libgsl2:amd64                               2.1+dfsg-2                                    amd64        GNU Scientific Library (GSL) -- library package

Let see your version, or if you have more than 1 gsl version installed...

MariaTsantaki commented 7 years ago

I have fedora23. The problem is solved when I use the areslib_gsl1.h instead of areslib.h . I guess there the function that issues the warning is not used.

sousasag commented 7 years ago

Yes, that funtion is for the use of the gsl 2.x. So does it mean that you have gsl 1.x installed? Can we confirm this before I close the issue?

Maybe with yum info gsl yum info gsl-devel

MariaTsantaki commented 7 years ago

You are right, my version is 1.16

sousasag commented 7 years ago

Ok perfect. I will close the issue. Thanks.