在Visual C++ 2005中使用 GNU Scientific Library
来源:互联网 发布:保定seo价格 编辑:程序博客网 时间:2024/06/09 22:08
最近要写一个类似于SPSS的统计学软件,需要用到很多数学函数和公式,顿时感觉头痛。上网无意中发现了GNU的开源的PSPP(GNU那帮大神们为了抵制SPSS的商业化闭源而做的和SPSS几乎功能完全一样的软件,连起的名字都相反。),发现它调用的是GNU Scientific Library库。上网搜了下发现这个库相当强大。于是准备用Visual C++ 2005来调用这个库函数来解决数学公式的问题。
1.下载安装GNU Scientific Library:
首先要到http://gnuwin32.sourceforge.net/packages/gsl.htm(这个网站一直打不开,但使用国外的代理可以打开)上下载“Complete package, except sources"和”Sources“这两个安装文件,下载下来是gsl-1.8.exe和gsl-1.8-src.exe,当然也可以下载后面的压缩包来选择其他安装方式。
运行gsl-1.8.exe和gsl-1.8-src.exe,选择安装路径。我的选择是D:\Program Files\GnuWin32。
2.在VS2005中配置GNU Scientific Library
首先要生成lib文件。在安装目录文件夹lib下并没有libgsl.lib,libgslcblas.lib这两个文件,只有两个扩展名为def和a(linux下库文件包格式)的文件,所以要转换成lib格式文件,使用菜单中的Visual Studio Tools下的命令程序去转换libgsl.def和libgslcblas.def(网上不推荐使用XP系统自带的CMD命令程序)。
进入gsl库的lib目录下依次输入以下两条语句:
lib /machine:i386 /def:libgsl.def
lib /machine:i386 /def:libgslcblas.def
再看lib目录下,发现有了libgsl.lib,libgslcblas.lib这两个文件。
打开VS2005,在工具——>选项——>项目和解决方案——>VC++目录中:
右边的列表框中:
在下拉菜单”可执行文件“的目录中,将安装文件的bin文件夹绝对路径添加上去;
在下拉菜单”包含文件“的目录中,将安装文件的include文件夹绝对路径添加上去;
在下拉菜单”库文件“的目录中,将安装文件的lib文件夹绝对路径添加上去;
最后,将安装文件夹下的bin目录中libgsl.dll和libgslcblas.dll两个文件拷贝至VS2005的安装文件夹下面的\Microsoft Visual Studio 8\VC\bin中去,否则在程序编译时会出现找不到这两个文件的问题。
注意在新建项目时要在“项目——>属性——>配置属性——>链接器——>输入”中添加libgsl.lib 和libgslcblas.lib。否则编译的链接过程会出现问题。
以上工作完成后,可以用网上的一段程序来测试配置的情况。
#include <iostream>#include <gsl/gsl_sf.h>int main(){ std::cout << gsl_sf_gamma_inc( 1.5, 0.5 ) << std::endl; std::cout << gsl_sf_gamma_inc_Q( 1.5, 0.5 ) << std::endl; std::cout << gsl_sf_gamma_inc_P( 1.5, 0.5 ) << std::endl; return 0;}
运行结果:
感谢以下网友所提供的技术帮助:
http://www.cnblogs.com/suda/archive/2012/03/03/2378644.html
http://blog.csdn.net/jyc1228/article/details/4437447
- 在Visual C++ 2005中使用 GNU Scientific Library
- Visual C++ 2005中使用 GNU Scientific Library
- 在Visual Studio 2013中编译GNU Scientific Library (GSL) v1.16
- Visual Stdio 环境下使用 GSL (GNU Scientific Library)
- Windows下在GSL(GNU Scientific Library)中使用OpenBLAS库
- GSL - GNU Scientific Library 在 windows 上的使用
- GSL - GNU Scientific Library
- GSL--GNU Scientific Library
- GSL--GNU Scientific Library
- GSL - GNU Scientific Library
- C/C++ GNU Scientific Library(GSL) for Windows
- 如何安装C/C++ GNU Scientific Library(GSL) for Windows
- GSL(GNU Scientific Library)在vs2010下的配置
- GSL(GNU Scientific Library)在vs2010下的配置
- 使用GNU Scientific Library(GSL)及GSL的配置
- Windows下使用GSL(GNU Scientific Library)
- Qt 环境下使用Gsl( GNU Scientific Library)库
- GSL--GNU Scientific Library 小记
- 消息映射深度探索(2):MFC的做法 - 使用消息映射表
- ch05 ex editor
- 消息映射深度探索(3):使用宏简化操作
- 源代码下载网站
- 消息映射深度探索(4):职责链模式 - 使用虚函数替换映射表
- 在Visual C++ 2005中使用 GNU Scientific Library
- Baidu Astar 130427
- 动、静态库编译顺序
- 消息映射深度探索(5):总结
- 9、C++程序中内存区域划分
- 俄罗斯方块
- http请求---请为我设置超时时间
- 10、C++在堆上分配内存
- 制作jffs2和ubifs文件系统时用到的mkfs.jffs2和mkfs.ubifs工具制作脚本