在Visual C++ 2005中使用 GNU Scientific Library
2013-04-28 00:17
363 查看
最近要写一个类似于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。否则编译的链接过程会出现问题。
以上工作完成后,可以用网上的一段程序来测试配置的情况。
运行结果:
感谢以下网友所提供的技术帮助:
http://www.cnblogs.com/suda/archive/2012/03/03/2378644.html http://blog.csdn.net/jyc1228/article/details/4437447
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
相关文章推荐
- 使用GNU Scientific Library(GSL)及GSL的配置(转自彭军)
- Windows下使用VC++编译GNU科学计算库 GNU Scientific Library(GSL)
- Windows下使用VC++编译GNU科学计算库 GNU Scientific Library(GSL)
- Visual Stdio 环境下使用 GSL (GNU Scientific Library)
- 使用GNU Scientific Library(GSL)及GSL的配置
- Windows下在GSL(GNU Scientific Library)中使用OpenBLAS库
- Visual Stdio 环境下使用 GSL (GNU Scientific Library)
- Visual Stdio 环境下使用 GSL (GNU Scientific Library)
- GSL - GNU Scientific Library 在 windows 上的使用
- Visual C++ 2005中使用 GNU Scientific Library
- Windows下使用VC++编译GNU科学计算库 GNU Scientific Library(GSL)
- 文件目录在Visual C++ 2005中使用 GNU Scientific Library
- Qt 环境下使用Gsl( GNU Scientific Library)库
- Windows下使用GSL(GNU Scientific Library)
- Visual Stdio C++ 编译器 编译 (GSL) GNU Scientific Library 的方法介绍(2)
- Ubuntu 安装GNU Scientific library(GSL)
- 有关GSL(GNU Scientific Library)的简介 版本号:GSL Version 1.10
- linux 下安装gsl(GNU Scientific Library)
- 在Visual Studio 2013中编译GNU Scientific Library (GSL) v1.16
- GSL--GNU Scientific Library