加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

VS2010+GSL的使用方法

(2014-03-05 16:19:03)
分类: GRACE

一、GSL介绍
GNU科学计算函数库GSL(GNU Scientific Library)是一个强大的C/C++数值计算函数库,它是一个自由软件,是GNU项目软件的一个部分,遵循GPL协议。GSL是一个为C和C++程序员提供的科学数值运算库。该科学计算库异常强大,函数库提供了大量的数值计算程序,如随机函数、特殊函数和拟合函数等等,整个函数库大约有1000多个函数,几乎涵盖了科学计算的各个方面。

该函数库的主页是:http://www.gnu.org/software/gsl/gsl.html。不过遗憾的是原始GSL并不支持不支持windows平台,可所幸的是有人做了GSL在windows上的移植工作,详见http://gnuwin32.sourceforge.net/packages/gsl.htm,目前版本是1.8。

二、下载和安装

http://gnuwin32.sourceforge.net/packages/gsl.htm下载

Complete package, except sources和Sources两个exe文件。

下载完成后先后安装gsl-1.8.exe和gsl-1.8-src.exe

三、设置VS2010

1、生成lib文件。发现安装目录lib下并没有libgsl.lib,libgslcblas.lib这两个文件,倒是有两个扩展名为def和a(linux下库文件包格式)的文件,因此必须进行转换。

开始菜单,要用VS带的CMD命令行去跑(开始--vs2010--visual studio tools),不能用windows系统下的CMD!!!

进入gsl库的lib目录下

    cd D:\Program Files\GnuWin32\lib

依次输入以下两条语句:
    lib /machine:i386 /def:libgsl.def
    lib /machine:i386 /def:libgslcblas.def

再看lib目录下,发现有了libgsl.lib,libgslcblas.lib这两个文件。http://s16/bmiddle/003yHjTLgy6H4teytEHff&690

http://s14/mw690/003yHjTLgy6H4tekvFzad&690

2、将x:\Program Files\GnuWin32l\bin中的libgsl.dll和libgslcblas.dll复制到D:\Program Files\Microsoft Visual Studio 10.0\VC\Bin;将\include整个Gsl目录复制到D:\Program Files\Microsoft Visual Studio 10.0\VC\include下;\lib目录下的所有.lib文件全部复制到D:\Program Files\Microsoft Visual Studio 10.0\VC\Lib下。

(如果这样添加了其实下面指定的前两个都不需要,因为在系统中已经有了这些文件,但不建议按这种方法指定,这样会使系统VC库中的东西非常混乱,强烈建议使用下面这种指定路径的方法!!)

在Project -> tracking-> Configuration Properties -> C/C++ -> General -> Additional Include Directories 中增加头文件路径。(快捷键alt+F7)

在Project -> tracking -> Configuration Properties -> C/C++ -> General -> Additional Library Directories 中增加库文件路径。

http://s12/mw690/003yHjTLgy6H4txJZ8L9b&690
在Project -> tracking  -> Configuration Properties -> Linker -> Input -> Additional Dependencies 中增加所依赖的库文件libgsl.lib和libgslcblas.lib。

http://s16/mw690/003yHjTLgy6H4ujE7hR1f&690

http://s1/mw690/003yHjTLgy6H4ujJXHif0&690

重要tips:需要在c/c++的command line里添加  /D "GSL_DLL",这个问题折磨了我一天。。。。

Project -> tracking  -> Configuration Properties ->C/C++->Command line

http://s1/mw690/003yHjTLgy6H4uvbbnq30&690
五、测试GSL函数库
本事例使用legendre函数http://s6/mw690/003yHjTLgy6H4uYxmOp05&690

预编译一下:

http://s8/bmiddle/003yHjTLgy6H4uYB7fx37&690

没有错误,运行结果也是一样的

http://s16/mw690/003yHjTLgy6H4uYo7FRff&690

这样就完成了GSL的配置,可以做很多的科学计算哦。








 

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有