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. 在ASP.NET Core中构建路由的5种方法

    原文链接 :https://stormpath.com/blog/routing-in-asp-net-core 在ASP.NET Core中构建路由的5种方法 原文链接 :https://storm ...

  2. 关于C# 中的布尔运算符 "&" "|” 与 其类似的条件布尔运算符 "&&" "||" 区别说明。

    运算符使用说明如下:  分隔符 ———————————————————————————— 分隔符 ———————————————————————————— 上述两个运算符的结果与&和 | 完全 ...

  3. Oracle数据库的安装 【超详细的文图详解】

    Oracle简介Oracle Database,又名Oracle RDBMS,或简称Oracle.是甲骨文公司的一款关系数据库管理系统.它是在数据库领域一直处于领先地位的产品.可以说Oracle数据库 ...

  4. 重写Ext中的typeOf函数

    重写Ext中的typeOf函数来解决Ext JS中typeOf对字符串对象.元素节点.文本节点.空白文本节点判断并不准确的问题 重写的typeOf函数使用自己实现的TypeOf函数2中的代码 测试代码 ...

  5. Sublime Text3介绍和插件安装——基于Python开发

    Subime编辑器是一款轻量级的代码编辑器,是收费的,但是可以无限期使用.官网下载地址:https://www.sublimetext.com. Sublime Text3支持语言开发种类多样,几乎可 ...

  6. python网络爬虫-中国大学排名定向爬虫

    爬虫定向爬取中国大学排名信息 #!/usr/bin/python3 import requests from bs4 import BeautifulSoup import bs4 #从网络上获取大学 ...

  7. (爬虫)requests库

    一.requests库简介 urllib库和request库的作用一样,都是服务器发起请求数据,但是requests库比urllib库用起来更方便,它的接口更简单,选用哪种库看自己. 如果没有安装过这 ...

  8. redis -hash(哈希.对象)

    hash 用于储存对象,对象的结构为属性.值 值的类型string 增加.修改: 设置单个属性: hset 键 field 值 例如: 设置键 user 的属性name 为 python hset u ...

  9. Vue.js01:跑马灯效果

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  10. 【spring源码分析】IOC容器初始化(一)

    前言:spring主要就是对bean进行管理,因此IOC容器的初始化过程非常重要,搞清楚其原理不管在实际生产或面试过程中都十分的有用.在[spring源码分析]准备工作中已经搭建好spring的环境, ...