Hi everyone. this is my problem:

I'm using the gsl library in a c code. Everything goes fine but when i use the 
command gsl_linalg_cholesky_invert, the terminal shows the following message:

    Undefined symbols for architecture x86_64:"_gsl_linalg_cholesky_invert", 
referenced from:
      _main in cc4eefuQ.o
    ld: symbol(s) not found for architecture x86_64
    collect2: error: ld returned 1 exit status

A code example is the following. 

    #include <stdio.h>
    #include <gsl/gsl_math.h>
    #include <gsl/gsl_linalg.h>
    #include <math.h>

    void main()
    {
        gsl_matrix * A          = gsl_matrix_calloc (2,2);
        
        gsl_matrix_set(A,0,0,1);
        gsl_matrix_set(A,0,1,0.5);
        gsl_matrix_set(A,1,0,0.5);
        gsl_matrix_set(A,1,1,1);
        gsl_linalg_cholesky_decomp(A);
        gsl_linalg_cholesky_invert(A);
    }

If i comment out the line `gsl_linalg_cholesky_invert(A);`, everything goes 
fine.

I compile the code with the following command:

    gcc-mp-4.7 wrapnorm.c -o wrapnorm -lgsl -l gslcblas -lm

with  a macbook pro with mountain lion and gsl version 1.9.
There is someone who can helps me?

Thanks




Reply via email to