在Ubuntu上使用GSL库

在Linux系统上,比较好的科学计算库应该就属GSL库了,而且GSL库编译安装非常方便,没有任何第三方库依赖,直接编译安装即可,这在开源软件界绝对是一个不小的奇迹,因为绝大多数开源软件,想要编译运行,都会把我们折磨得死去活来,解决一个又一个依赖库和版本冲突,是一个绝对的体力活,还需要耐心和毅力。所以GSL库真的是一个不可多得的开源科学计算库。
我们首先下载GSL源码:

git clone git://git.savannah.gnu.org/gsl.git

其会把代码下载到当前目录下的gsl目录,进入gsl目录,运行:

./autogen.sh

然后运行:

./configure --enable-maintainer-mode

然后运行:

make
make install

其会将头文件安装到/usr/local/include目录,库文件安装到/user/local/lib目录下。
为了验证编译安装成功,编辑如下文件:

#include <stdio.h>
#include <gsl/gsl_sf_bessel.h>

int main(int argc, char** argv)
{
    double x = 5.0;
    double y = gsl_sf_bessel_J0(x);
    printf("bessel=%f\r\n", y);
    return 0;
}

编译生成可执行文件:

gcc -std=c99 -I/usr/local/include -L/usr/local/lib -o test.o test.c -lgsl -lgslcblas -lm

其中加入-std=c99可以使用内联函数,提高程序执行效率。
先设置好环境变量:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib

最后运行:

./test.o

如果可以正确打印出一个浮点数,就说明编译安装成功了。

猜你喜欢

转载自blog.csdn.net/yt7589/article/details/80794974