zoukankan      html  css  js  c++  java
  • 【C++】GSL(GNU Scientific Library) 的安装及在 Visual Studio 2017 中的使用

    GSL 是 GNU 开发并维护的科学计算的库,其中包括:

    复数 多项式的根
    特殊函数 向量和矩阵
    排列 排序
    BLAS支持 线性代数
    Eigensystems 快速傅立叶变换
    正交 随机数
    准随机序列 随机分布
    统计 直方图
    N元组 蒙特卡洛整合
    模拟退火 微分方程
    插值 数值微分
    切比雪夫逼近 系列加速
    离散Hankel变换 求根
    最小化 最小二乘拟合
    物理常数 IEEE浮点
    离散小波变换 基础样条
    运行统计 稀疏矩阵与线性代数

    使用文档

    【GNU Scientific Library】

    安装教程

    环境:操作系统 Windows 10,IDE:Visual Studio 2017,GSL 版本:2.5

    1. 下载GSL

    可以在ftp 上下载:ftp://ftp.gnu.org/gnu/gsl/
    下载2.5版本的并解压好。

    2. 下载 MinGW

    MinGW 提供了一个完整的开源编程工具集,且不依赖于任何第三方 C 运行时库。相比 Cygwin 更精简,不提供 POSIX 环境。

    它包括:

    • GNU Compiler Collection(GCC),包括C,C ++,ADA 和 Fortran 编译器
    • GNU工具,包括汇编程序,链接程序,归档管理器
    • mingw-get(命令行安装程序),带有可选的GUI前端,用于部署 MinGW 和 MSYS
    • mingw-get-setup(GUI 首次设置工具),让你开始使用mingw-get。

    MSYS 是 “Minimal SYStem” 的缩写,是 Bourne Shell 命令行解释器系统。作为微软的 cmd.exe 的替代品,它提供了一个通用的命令行环境,特别适合与 MinGW 一起使用,用于将许多开源应用程序移植到 MS-Windows 平台; 它是 Cygwin-1.3 的轻量级分支,它包含一小部分 Unix 工具。

    下载 MinGW 安装程序:https://sourceforge.net/projects/mingw/files/

    安装时选上 Basic Setup,然后 Installation->Apply Changes,等待安装完成。接着添加环境变量,默认安装路径是 C:MinGW,所以添加上C:MinGWin

    如果之前安装过 MinGW,但没有安装MSYS,则只需安装 MSYS。

    3. 安装 GSL

    运行C:MinGWmsys1.0msys.bat,cd进入到解压好的 gsl 文件夹,例如在 D:/gsl-2.5

    cd /d/gsl-2.5/
    

    然后执行安装命令:

    ./configure && make && make install
    

    安装好后,会在C:MinGWmsys1.0local中多出以下四个目录:

    • bin
    • include
    • lib
    • share

    4. 配置Visual Studio 2017中的项目

    点击菜单“项目”->“Project 1属性”:

    • 选择“VC++目录”:
      • “包含目录”加上C:MinGWmsys1.0localinclude
      • “库目录”加上C:MinGWmsys1.0locallib
    • 选择“C/C++”->“预处理器”:
      • “预处理器定义”加上WIN32;GSL_DLL;
    • 选择“链接器”->“输入”:
      • “附加依赖项”加上libgsl.dll.a;libgslcblas.dll.a
        点“确定”。

    5. 编译运行

    • 将之前bin目录下的libgsl-23.dlllibgslcblas-0.dll放到Project1Debug目录下,也就是之后 exe 所在的目录。
    • 编译运行。
  • 相关阅读:
    策略模式Strategy
    flex项目
    模板方法Template Method
    timer与ScheduledExecutorService
    java两个字符串的相似度
    一个简单的webshell
    状态模式State
    Java性能优化
    责任链模式China of Responsibility
    ns2.34下mflood协议的完美移植
  • 原文地址:https://www.cnblogs.com/flipped/p/9314461.html
Copyright © 2011-2022 走看看