我需要用GSL(GNU科学库)写一些C代码,以前从未使用过库。
我是一个物理学家,而不是计算机科学家,并与GNU文档中的许多术语作斗争。
在过去的几个小时里,我对如何在Windows 7机器上使用GSL感到非常困惑。我试着在这个网站和其他网站上阅读了很多问题,但是很多术语都超出了我的理解范围。
通常,当我写一个程序时,我会执行以下步骤:
1.打开notepad++,包括任何我自己的头文件,并编写我的代码。
1.通过打开Windows命令提示符并键入以下内容来编译程序:
第一个月
我将gcc作为环境变量,并通过安装CodeBlocks for Windows安装了gcc(但是,我不使用代码块)。
如何安装GSL:
1.已从以下位置下载GSL for Windows:http://gnuwin32.sourceforge.net/packages/gsl.htm
1.安装在桌面上,这样我的路径就不会有空格字符(我读过路径中的空格可能是个问题)。
1.将我的路径环境变量设置为.dll的位置:C:\Users\Rohan\Desktop\GnuWin32\bin;
个
1.已尝试编译GSL示例程序:
#include <stdio.h>
#include <gsl/gsl_sf_bessel.h>
int main (void)
{
double x = 5.0;
double y = gsl_sf_bessel_J0 (x);
printf ("J0(%g) = %.18e\n", x, y);
return 0;
}
字符串
5.我调用编译器如下:
C:\Users\Rohan\Desktop>gcc -Wall -I"C:\Users\Rohan\Desktop\GnuWin32\include" -L"C:\Users\Rohan\Desktop\GnuWin32\lib" -lgslcblas -lgsl -lm -o test test.c
型
这导致以下错误消息:
C:\Users\Rohan\AppData\Local\Temp\ccW8cO7I.o:test.c:(.text+0x30): undefined reference to `gsl_sf_bessel_J0'
collect2: ld returned 1 exit status
型
由于没有CS背景,大多数这些都是在几乎没有理解的情况下完成的。
我是不是走对了路?是否有一个简单的一步一步的指导,在非技术性的语言,我可以遵循这个工作?
1条答案
按热度按时间p1tboqfb1#
您需要将
test.c
放在库之前。库应该在命令行中指定在其中使用符号的事物之后,因此更改为:字符串