Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/55.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 使用Gnu科学库进行曲线拟合的示例代码无法运行。_C_Curve Fitting_Gsl_Dyld - Fatal编程技术网

C 使用Gnu科学库进行曲线拟合的示例代码无法运行。

C 使用Gnu科学库进行曲线拟合的示例代码无法运行。,c,curve-fitting,gsl,dyld,C,Curve Fitting,Gsl,Dyld,我正在尝试使用GSL进行最小二乘拟合,但我甚至无法正常运行。它可以编译,但在运行程序时会出现错误 dyld:lazy符号绑定失败:找不到符号:\u cblas\u dnrm2 引用自:/usr/local/lib/libgsl.0.dylib 应在:动态查找中使用 我相信我已经把问题缩小到了底线 gsl\u多比特fdfsolver\u集(s,&f,&x.vector) 但我一点也不知道为什么 我使用GSL1.15在OSX上运行它(尽管我最初安装了错误的版本1.9)。我在终端中使用:gcc unc

我正在尝试使用GSL进行最小二乘拟合,但我甚至无法正常运行。它可以编译,但在运行程序时会出现错误

dyld:lazy符号绑定失败:找不到符号:\u cblas\u dnrm2

引用自:/usr/local/lib/libgsl.0.dylib

应在:动态查找中使用

我相信我已经把问题缩小到了底线

gsl\u多比特fdfsolver\u集(s,&f,&x.vector)

但我一点也不知道为什么

我使用GSL1.15在OSX上运行它(尽管我最初安装了错误的版本1.9)。我在终端中使用:
gcc unchanged\u example.c-o examplefitter-lgsl-lm


编辑:找到解决方案。在编译时添加“
-lgslcblas
”将其分类

您需要找到包含
\u cblas\u dnrm2
的共享库,并将其链接到您的应用程序中。

对于任何遇到此问题的人,您需要针对两个库进行链接

gcc -Wall -O3 -g -lgslcblas -lgsl -std=c11 -pedantic-errors

谢谢你的快速回复。那么我在哪里可以找到那个图书馆呢。只是在寻找,似乎不存在?这可能是非常基本的,但当我找到它时,我会如何详细地链接它?请原谅我的无知,我感谢你的帮助。我猜这是你的GSL下载的一部分,但你没有正确设置你的库链接路径。自从我上次做C编程已经太长时间了,我都记不起来了,但我认为这与你设置的-lm路径有关。我想我在这里可能有点不知所措。老实说,我真的不知道“-lm”是什么意思,我只是添加了它,因为我在某处看到了这样做的推荐。不管有没有,同样的事情也会发生。我应该期望“cblas\U dnrm2”是什么?某处应该有一个名为so的文件吗?我已经让其他gsl函数以这种方式编译,你知道为什么这个库不能正确链接吗?最好深入研究并弄清楚。我好久没给你提出多少切实可行的建议了。但是您的应用程序需要链接许多库。你的工作就是找到它们并告诉你的应用程序如何链接它们。