你好,游客 登录
背景:
阅读新闻

如何编译Windows版本的GSL - Augusdi的专栏

[日期:2013-04-15] 来源:  作者: [字体: ]

GSL全名为GNU Scientific Library,是GNU发起的一个科学计算项目,采用C语言编写,可以在C/C++开发中广泛使用。因为是开源项目,在Windows平台下面没有现成的安装文件可供使用,一般需要自己编译这个项目。现在我把自己从网上找的资料和自己编译的经过汇总一下,写成这个教程。­

在Windows平台上编译GSL主要使用MinGW和MSYS这两个工具,这些工具可以在sourceforge下载­

http://sourceforge.net/projects/mingw/­

(1)下载安装 MinGW(安装时选择gcc,g++和Make这三项)­

(2)下载安装 MSYS­

(3)下载MinGW Utilities 解压复制到MSYS安装目录­

(4)下载解压gsl源码,可以在GNU下载到 www.gnu.org/software/gsl/ ­

(5)进入gsl目录,执行命令:­

   ./configure­

   make­

   make install­

(6)完成编译之后,在MSYS安装目录下的­

local/bin有编译了的gsl动态库文件libgsl-0.dll libgslcblas-0.dll­

local/lib有编译好了的静态库文件libgsl.a libgsl.dll.a libgslcblas.a libgslcblas.dll.a­

local/include有编程需要的gsl头文件­

(7)此时你会发现,编译的结果缺少lib文件,现在我们来生成lib文件­

cd /usr/local/bin­

pexports libgsl-0.dll >libgsl-0.def­

pexports libgslcblas-0.dll >libgslcblas-0.def­

  这时候就生产了两个def文件­

  (8)使用VC6或以上版本的lib命令,生成lib文件,具体如下:­

lib /machine:i386 /def:libgsl-0.def­

lib /machine:i386 /def:libgslcblas-0.def­

(9)动态链接库拷贝到系统的Windows文件夹下面;­

   将gsl头文件(local/include里面的gsl目录)拷贝到include文件夹下面;­

   lib文件和*.a文件(local/lib下面)放到Lib文件夹下面,­

   编译器tools-options-directories添加Lib路径和Include路径­

   最后一步就是在VC6的工程设置中的object/library modules里面添加以下内容:­

   libgslcblas-0.lib libgsl-0.lib­

至此,整个gsl的移植工作就完成了。­





收藏 推荐 打印 | 录入:admin | 阅读:
相关新闻