1

如此处所述,我让 GSL 使用 CygWin 工作,但我想使用 MinGW 生成可执行文件。我下载了 GnuWin32,通过将 GnuWin32\include 的内容放入 MinGW\include 并为 lib 和 bin 目录执行相同操作,我摆脱了一些错误,但我仍然收到错误,

undefined reference to 'gsl_sf_bessel_J0'

我试图运行的代码是,

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

int main(void)
{
  double x = 5.0 ;
  double y = gsl_sf_bessel_J0( x ) ;
  printf( "J0(%g) = %.18e\n", x, y ) ;
  return 0 ;
}

我从这里了解到链接器产生了此错误消息,但我不确定如何处理此信息。我想我需要在编译命令中添加一些东西,但我不确定要添加什么。现在我正在尝试使用该命令进行编译,

g++ gsltest.cpp -o gsltest.exe

任何帮助将不胜感激,谢谢!

4

1 回答 1

0

天哪,路易丝。我想到了。利用,

g++ gsltest.cpp -o gsltest.exe -lgsl -lm

使用这个关于科学编程的幻灯片可以找到更多信息。

于 2012-10-19T17:40:08.623 回答