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:\MinGW\bin

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

3. 安装 GSL

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

cd /d/gsl-2.5/

然后执行安装命令:

./configure && make && make install

安装好后,会在C:\MinGW\msys\1.0\local中多出以下四个目录:

  • bin
  • include
  • lib
  • share

4. 配置Visual Studio 2017中的项目

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

  • 选择“VC++目录”:

    • “包含目录”加上C:\MinGW\msys\1.0\local\include
    • “库目录”加上C:\MinGW\msys\1.0\local\lib
  • 选择“C/C++”->“预处理器”:
    • “预处理器定义”加上WIN32;GSL_DLL;
  • 选择“链接器”->“输入”:
    • “附加依赖项”加上libgsl.dll.a;libgslcblas.dll.a

      点“确定”。

5. 编译运行

  • 将之前bin目录下的libgsl-23.dlllibgslcblas-0.dll放到Project1\Debug目录下,也就是之后 exe 所在的目录。
  • 编译运行。

【C++】GSL(GNU Scientific Library) 的安装及在 Visual Studio 2017 中的使用的更多相关文章

  1. Visual Studio 2017中如何创建安装打包项目

    从Visual Studio 2012开始,微软就不在环境中自动集成安装打包项目了,如果还想使用,需要手动下载安装,这里以在Visual Studio 2017上安装打包项目为例进行介绍,步骤如下: ...

  2. 在Visual Studio 2017中安装bower

    在项目目录下添加一个文件.bowerrc { "directory": "wwwroot/lib" } JS包默认安装到webroot的lib文件夹,可以通过. ...

  3. (转载)Ubuntu 安装GNU Scientific library(GSL)

    背景: Blei的hlda的C语言实现需要使用C语言的科学计算包GSL,因此决定安装.由于在windows下安装极其繁琐,先在Linux上安装之. 系统环境: Linux version 2.6.35 ...

  4. Ubuntu 安装GNU Scientific library(GSL)

    注: 此系列为自己之前所搭建网站内容. 由于论文数据处理的需要,需要使用libeemd这个包,需要安装gsl科学库,windows下没有办法,只能转战ubuntu进行科学计算. GSL(GNU Sci ...

  5. Visual Stdio 环境下使用 GSL (GNU Scientific Library)

    Visual Stdio 环境下使用 GSL (GNU Scientific Library) 经測试.这里的方法不适用于VS2015. * 这篇文章有点过时了.建议从以下网址下载能够在 vs 环境下 ...

  6. visual studio 2017安装教程以及各类问题解决方案

    文章的关键词和所含教程: VS2017安装/visual studio 2017安装/Xamarin/Android for visual studio 2017/VS2017找不到网站/VS2017 ...

  7. GNU scientific library

    GNU scientific library 是一个强大的C,C++数学库.它涉及的面很广,并且代码效率高,接口丰富.正好最近做的一个项目中用到多元高斯分布,就找到了这个库. GNU scientif ...

  8. GSL 1.15 and 1.16 building with Visual Studio 2010 --FROM 4fire

    http://4fire.wordpress.com/2012/03/18/gsl-1-15-building-with-visual-studio-2010/ Update 05/02/2014: ...

  9. 在Visual Studio 2010中安装iGraph

    本安装步骤参考了:http://www.16kan.com/question/detail/182225.html Igraph actually does work with Visual C++ ...

随机推荐

  1. 点击菜单选项,右侧主体区新增子界面(Tab)的实现

    今天是2019年小年后一天,还有三天回家过年. 今天记录一下一种前端页面的效果的实现,这种效果很常见,一般用于网站后台系统的前端页面.一般后台系统会分为顶部导航栏,左边的菜单栏和右边的主体区.有一种效 ...

  2. int 与 Integer 的区别

    int和Integer的区别 Integer是int的包装类,int则是java的一种基本数据类型 Integer变量必须实例化后才能使用,而int变量不需要 Integer实际是对象的引用,当new ...

  3. phpstorm本地怎么上传到服务器

    连接服务器 菜单栏找到[工具/Tools]->[Deployment/部署]->[Confinguration…/配置…]. 点加号(+),添加一台服务器,填写名称,选择类型为SFTP,点 ...

  4. CSS HACK 如何书写

    什么是css  hank 由于不同厂商的流览器或某浏览器的不同版本(如IE6-IE11,Firefox/Safari/Opera/Chrome等),对CSS的支持.解析不一样,导致在不同浏览器的环境中 ...

  5. SAP 没有激活HUM功能照常可以使用Handling Unit

    SAP 没有激活HUM功能照常可以使用Handling Unit 笔者所在的项目上的公司间STO的流程里,发货公司在做PGI之后系统自动触发收货公司的inbound delivery单据,发货公司发出 ...

  6. C++一种高精度计时器

    在windows下可以通过QueryPerformanceFrequency()和QueryPerformanceCounter()等系列函数来实现计时器的功能. 根据其函数说明,其精度能够达到微秒级 ...

  7. Dynamics 365-为什么查到的Record的Id是Guid初始值

    通过代码查询CRM数据,这个是开发经常会碰到的情况,获取返回的EntityCollection之后,我们会拿Entity.Id做进一步操作.笔者最近碰到的情况,是Entity.Id是个初始值.先上一段 ...

  8. PDF转图片工具

    点击下载( 提取码:1ll1 ) 软件功能基于mupdf,UI使用wxpython开发 功能: 支持pdf转图片,图片格式png 支持批量转换 使用: 第一步,点击按钮添加文档到列表,或直接将待转换文 ...

  9. android开发中调用python代码(带参数)

    android开发主要用到的是java代码,但是当开发涉及到一些算法时,往往用python可以提高软件的运行速度,也更加便捷,这里分享自己项目调用python代码的方式,主要有以下几个步骤(个人方法, ...

  10. java:nextInt()和nextLine()一起使用出错

    今天遇到一个很奇怪的事情,日常刷题中,遇到一个很简单的题: (不想看我多逼逼只想知道为什么会出错看最后) 题目: 题目描述 description 现有有N个学生的数据记录,每个记录包括学号.姓名.三 ...