Hello there. I've been looking through some of the post on these forums and found them to be quite useful, unfortunatly, I have come to a point where I no longer understand what is going wrong and what I am supposed to do, thats why I'm submitting my problem to you in the hopes that someone can help me.
Basically I installed Code Blocks on my Computer and found it to be really, reeaally good! (the computers at uni use quincy). I want to use the GSL libraries to solve eigenvalue problems and to generate random numbers from the normal distribution. I could code these things manually but decided it would be much more efficient to have a large library of functions I could use that have functions outside the ones I am immediatly interested in, just for future references.
Anyway, I had been reading this thread:
http://forums.codeblocks.org/index.php?topic=9485.0The code I have been trying to run is the GSL eigenvalue example
#include <iostream>
#include <gsl/gsl_math.h>
#include <gsl/gsl_eigen.h>
using namespace std;
int
main (void)
{
double data[] = { 1.0 , 1/2.0, 1/3.0, 1/4.0,
1/2.0, 1/3.0, 1/4.0, 1/5.0,
1/3.0, 1/4.0, 1/5.0, 1/6.0,
1/4.0, 1/5.0, 1/6.0, 1/7.0 };
gsl_matrix_view m
= gsl_matrix_view_array (data, 4, 4);
gsl_vector *eval = gsl_vector_alloc (4);
gsl_matrix *evec = gsl_matrix_alloc (4, 4);
gsl_eigen_symmv_workspace * w =
gsl_eigen_symmv_alloc (4);
gsl_eigen_symmv (&m.matrix, eval, evec, w);
gsl_eigen_symmv_free (w);
gsl_eigen_symmv_sort (eval, evec,
GSL_EIGEN_SORT_ABS_ASC);
{
int i;
for (i = 0; i < 4; i++)
{
double eval_i
= gsl_vector_get (eval, i);
gsl_vector_view evec_i
= gsl_matrix_column (evec, i);
printf ("eigenvalue = %g\n", eval_i);
printf ("eigenvector = \n");
gsl_vector_fprintf (stdout,
&evec_i.vector, "%g");
}
}
gsl_vector_free (eval);
gsl_matrix_free (evec);
return 0;
}
and I get the following error:
error: gsl/gsl_math.h: no such file or directory
error: gsl/gsl_eigen.h: no such file or directory
then a list of 25 errors related to not having found the header file.
I had unzipped the GNUWin32 library from sourceforge and I think i linked the libraries to the project but I don't know how to tell the Program where to look for the header files.
I feel that I am probably making some kind of rookie error at the moment, because to be honest, I am a rookie at this.
One thing that confused me was the zip file only had headers in the files, there was no C code, I assume that all the actual C program code is held in the .a files
Any help with this would be much appretiated, if you need more info just say so, I'm not entirely sure what i need to tell you to help you.
thanks