zoukankan      html  css  js  c++  java
  • windows下GSL的配置

    一、GSL的下载、安装

      下载地址:http://gnuwin32.sourceforge.net/packages/gsl.htm 下载 Complete package, except sources和Sources两个exe文件

      安装从下载的两个文件gsl-1.8.exe和gsl-1.8-src.exe,如我的安装在:D:\GSL\ 目录下:
      

    二、设置编译环境

    (1)对于VS2010:

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

      开始菜单,要用VS带的CMD命令行去跑,不能用windows系统下的CMD!!!

      进入gsl库的lib目录下依次输入以下两条语句:
        lib /machine:i386 /def:libgsl.def
        lib /machine:i386 /def:libgslcblas.def

    再看lib目录下,发现有了libgsl.lib,libgslcblas.lib这两个文件。

     2、

    方式一(不推荐)

    将..\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 中增加头文件路径。

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

    在Project -> tracking  -> Configuration Properties -> Linker -> Input -> Additional Dependencies 中增加所依赖的库文件libgsl.lib和libgslcblas.lib。

    重要tips:需要在c/c++的command line里添加  /D "GSL_DLL"

     (注:Project -> tracking  -> Configuration Properties ->C/C++->Command line)

    (2) 对于VC6:

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

        这里可以直接用windows命令行,在命令行中切换到D:\GSL\GnuWin32\lib

        lib /machine:i386 /def:libgsl.def

        lib /machine:i386 /def:libgslcblas.def

        运行以上命令后再看lib目录下,发现有了libgsl.lib,libgslcblas.lib这两个文件,这就对了,进入下一步。

        将D:\GSL\GnuWin32\bin中的libgsl.dll和libgslcblas.dll复制到..\VC\Bin下;

        将D:\GSL\GnuWin32\include目录下的整个gsl文件夹拷贝到..\VC\include下;

        将D:\GSL\GnuWin32\lib目录下的所有.lib文件全部复制到..\VC98\Lib下。

        新建一个VC6工程用于测试,然后进入项目->属性->连接器->输入,在“附加依赖项”一栏加入库文件 libgsl.lib libgslcblas.lib,用空格隔开,并在

      Project setting->C++->Project Options加入/D "GSL_DLL",并点击OK

     

    三、测试用例

     1 #include <gsl/gsl_spline.h>
     2 #include <cstdio>
     3 #include <cstdlib>
     4 #include <cmath>
     5 
     6 void Display()
     7 {
     8      const size_t n = 4;
     9      double x[] =  {0,0.333336,0.666666,1};
    10      double y[] =  {0,0.5,0.9,0};
    11      gsl_interp* interps[3] =  {NULL,NULL,NULL};
    12      interps[0] = gsl_interp_alloc(gsl_interp_linear,n);
    13      interps[1] = gsl_interp_alloc(gsl_interp_polynomial,n);
    14      interps[2] = gsl_interp_alloc(gsl_interp_cspline,n);
    15      gsl_interp_init(interps[0],x,y,n);
    16      gsl_interp_init(interps[1],x,y,n);
    17      gsl_interp_init(interps[2],x,y,n);
    18      gsl_interp_accel* acc = gsl_interp_accel_alloc();
    19 }
    20 
    21 int main(int argc, char** argv)
    22 
    23 {
    24      Display();
    25      return 0;
    26 
    27 }

     

     

  • 相关阅读:
    java程序调用CMD命令启动tomcat替换环境变量
    解决mysql中只能通过localhost访问不能通过ip访问的问题
    mysql 主从配置
    maven私服上传jar包
    mysql 服务【安装】【启动】【停止】【卸载】【重置密码】
    spring boot 文件上传大小限制
    Mysql 字符串分隔函数
    上取整和下取整之间的转换关系
    chapter3 数据链路层
    Chapter2 物理层
  • 原文地址:https://www.cnblogs.com/moondark/p/2471879.html
Copyright © 2011-2022 走看看