GSL是一个GNU支持的科学计算库,提供了很丰富的数值计算方法。本文介绍了GSL库在Windows环境下使用VisualStudio进行编译构建的过程。
GSL 的项目主页提供的说明来看,GSL支持如下的科学计算:
(下面的这张表格的HTML使用的是No-Cruft Excel to HTML Table Converter生成的)
Complex Numbers | Roots of Polynomials |
Special Functions | Vectors and Matrices |
Permutations | Sorting |
BLAS Support | Linear Algebra |
Eigensystems | Fast Fourier Transforms |
Quadrature | Random Numbers |
Quasi-Random Sequences | Random Distributions |
Statistics | Histograms |
N-Tuples | Monte Carlo Integration |
Simulated Annealing | Differential Equations |
Interpolation | Numerical Differentiation |
Chebyshev Approximation | Series Acceleration |
Discrete Hankel Transforms | Root-Finding |
Minimization | Least-Squares Fitting |
Physical Constants | IEEE Floating-Point |
Discrete Wavelet Transforms | Basis splines |
GSL的Linux下的配置很简单,照着它的INSTALL文件一步一步来就可以了。CMAKE大法HAO!
1 | ./configure |
同样的,GSL也可以在Windows环境下配置,下面记录了如何在Windows环境下使用 Visual Studio 和 CMakeGUI 编译测试GSL。
使用CMAKE编译成.SLN文件
打开CMAKEGUI,将输入代码路径选为GSL源代码地址,输出路径设为自己想要的输出路径。点击 “Configure“,选择Visual Studio2013为编译器,点击Finish后会进行必要的配置。然后将表格里面的选项都打上勾,再次点击”Configure“,等待完成之后点击”Generate“。完成之后,就可以在输出路径下看到GSL.sln文件了。
使用Visual Studio生成解决方案
使用 Visual Studio 打开刚才生成的.SLN文件,分别在Debug和Release模式下生成解决方案,等待完成即可。
当完成后,你应该可以在路径下看到这样一张图,我们主要关注的文件夹是\bin,\gsl,\Debug和\Release。
加入环境变量
修改环境变量的Path,将\GSL_Build_Path\bin\Debug加入,这主要是为了\Debug文件夹下面的gsl.dll文件。如果不进行这一步的话,一会虽然可以编译,但是却不能运行。
这里顺便注释一句,当使用第三方库的时候,如果需要动态链接库的支持,其中一种方法就是将DLL文件的路径加入到Path中去。
建立Visual Studio属性表
Visual Studio可以通过建立工程属性表的方法来配置工程选项,一个OpenCV的例子可以参见Yuanbo She的这篇博文 Opencv 完美配置攻略 2014 (Win8.1 + Opencv 2.4.8 + VS 2013)。
配置文件中主要是包含文件和静态链接库LIB的路径设置。下面把我的贴出来,只需要根据GSL的生成路径做相应修改即可。注意我的属性表中保留了OpenCV的内容,如果不需要的话,尽可以删掉。上面的博文对这张属性表如何配置讲得很清楚,有问题可以去参考。
1 |
|
在以后建立Visual Studio工程的时候,在属性窗口直接添加现有属性表就可以了!
测试
在项目网站的教程上直接找到一段代码,进行测试,输出贝塞尔函数的值。
1 |
|
控制台输出正确: