help-gsl
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Help-gsl] Problems with compiling Non Linear Fit Example


From: Dominic Steinitz
Subject: Re: [Help-gsl] Problems with compiling Non Linear Fit Example
Date: Wed, 21 Mar 2018 08:09:21 +0000

I’d highly recommend using nix as your package manager rather than building 
things yourself. I am happily using both gsl and sundials and didn’t have to do 
anything other than specify I want them and nix installed them (building as 
necessary). Of course, it’s a big change but I have found it worth it.

Maybe this can help you get started: 
https://www.domenkozar.com/2014/01/02/getting-started-with-nix-package-manager/

Dominic Steinitz

PS Perhaps I should write a blog post about using nix for numerical stuff.

> On 20 Mar 2018, at 15:20, Patrick Alken <address@hidden> wrote:
> 
> Hello,
> 
>   I just installed a clean version of GSL v2.4 in my home directory to try 
> your program. Here are the commands I used:
> 
> > cd gsl-2.4
> > ./configure --prefix=/home/palken/usr
> > make
> > make install
> > gcc -g -Wall -o test test.c -lm /home/palken/usr/lib/libgsl.a -lgslcblas
> > ./test
> ...
> summary from method 'trust-region/levenberg-marquardt'
> number of iterations: 16
> function evaluations: 23
> Jacobian evaluations: 17
> reason for stopping: small step size
> initial |f(x)| = 62.202928
> final   |f(x)| = 5.454180
> chisq/dof = 0.804002
> A      = 5.17379 +/- 0.27938
> lambda = 0.11104 +/- 0.00817
> b      = 1.05283 +/- 0.05365
> status = success
> 
> Note that when compiling test.c, I gave the full path to the new GSL v2.4 
> library (your issue is probably that the linker is trying to link with an old 
> version of GSL). Hope this helps.
> 
> Patrick
> 
> On 02/16/2018 01:45 AM, Dr. Jonny Birkhan wrote:
>> Dear all,
>> 
>> I have installed gsl-2.4 on a
>> 
>> Linux 4.4.0-103-generic #126-Ubuntu SMP Mon Dec 4 16:23:28 UTC 2017 x86_64.
>> 
>> The libraries are installed in /usr/local/lib.
>> 
>> My gcc version is: gcc (Ubuntu 5.4.0-6ubuntu1~16.04.6) 5.4.0 20160609
>> 
>> 
>> When I try to compile the Exponential Fitting Example I get the following 
>> messages:
>> 
>> gcc -LLIBDIR=/usr/local/lib -o test test.c -lm -lgsl -lgslcblas
>> 
>> /tmp/ccuzgEIN.o:: In function `callback':
>> test.c:(.text+0x2b1): undefined reference to `gsl_multifit_nlinear_residual'
>> test.c:(.text+0x2c1): undefined reference to `gsl_multifit_nlinear_position'
>> test.c:(.text+0x2d8): undefined reference to `gsl_multifit_nlinear_rcond'
>> /tmp/cclIWgcr.o: In function `main':
>> test.c:(.text+0x386): undefined reference to `gsl_multifit_nlinear_trust'
>> test.c:(.text+0x399): undefined reference to 
>> `gsl_multifit_nlinear_default_parameters'
>> test.c:(.text+0x640): undefined reference to `gsl_multifit_nlinear_alloc'
>> test.c:(.text+0x665): undefined reference to `gsl_multifit_nlinear_winit'
>> test.c:(.text+0x671): undefined reference to `gsl_multifit_nlinear_residual'
>> test.c:(.text+0x6f6): undefined reference to `gsl_multifit_nlinear_driver'
>> test.c:(.text+0x708): undefined reference to `gsl_multifit_nlinear_jac'
>> test.c:(.text+0x729): undefined reference to `gsl_multifit_nlinear_covar'
>> test.c:(.text+0x755): undefined reference to `gsl_multifit_nlinear_trs_name'
>> test.c:(.text+0x764): undefined reference to `gsl_multifit_nlinear_name'
>> test.c:(.text+0x78f): undefined reference to `gsl_multifit_nlinear_niter'
>> test.c:(.text+0xa9e): undefined reference to `gsl_multifit_nlinear_free'
>> collect2: error: ld returned 1 exit status
>> 
>> I guess it's a problem with a missing library file. I couldn't find any bug 
>> report on that problem.
>> 
>> The source code is appended.
>> 
>> Can you help me?
>> 
>> Thanks in advance and best regards,
>> 
>> Jonny Birkhan
>> 
> 
> 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]