如何在Linux中正确安装gsl库?

see*_*uch 4 c linux installation gsl

我在安装GNU Scientific Library(gsl)时遇到了问题.根据所包含的文件,我将软件包放在桌面上,然后执行"./configure","make"和"sudo make install".我检查了/ usr/local/include目录,里面有一个新创建的"gsl"文件夹.但是当我尝试使用库提供的函数时,出现了"对'gsl_sf_beta_inc'的未定义引用"错误.这是我的代码.

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

int main (void)
{
    double a = 20;
    double b = 1000;
    double x = 0.5;
    double result = gsl_sf_beta_inc(a, b, x);
    printf("%f/d", result);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

我感觉问题可能是由于我把软件包放在桌面上的事实引起的,所以"make"命令生成的二进制代码就到了那里,这是错误的.那么,我猜是正确的吗?如果是的话,我应该把它们放在哪里?如果不是,我该怎么办?谢谢.

Vin*_*ura 11

假设make install成功,您需要链接库.

GSL的文档说,这应该工作
(注意两个必要的连接选项,GSL的工作:"-lgsl -lgslcblas"):

gcc -I/usr/local/include -L/usr/local/lib main.c -o main -lgsl -lgslcblas -lm
Run Code Online (Sandbox Code Playgroud)

替代"cblas"而不是gsl的cblas也是可能的:gsl的替代cblas