GSL介绍

GSL介绍:GNU Scientific Library (GSL) 是一个供 C/C++ 程序员使用的数值计算库。 它是 GNU 通用公共许可证下的免费软件。

使用CMake生成gsl项目

下载地址:gsl-2.7。下载好放在D:\gsl

并在工程目录下新建build-vs2019空文件夹


以管理员身份打开x64 Native Tools Command Prompt for VS 2019cd进入该文件夹

根据目录D:\gsl中的文件CMakeList.txt中的指导生成gsl项目


生成动态库

cmake -G"Visual Studio 16 2019" -DGSL_INSTALL_MULTI_CONFIG=ON -DNO_AMPL_BINDINGS=1 -DCMAKE_INSTALL_PREFIX=%cd%/install -DBUILD_SHARED_LIBS=ON -DMSVC_RUNTIME_DYNAMIC=ON D:/gsl

VS2019编译gsl

可直接使用如下命令行编译

cmake --build . --config Release --target install


得到最终需要的编译文件

VS2019环境配置

新建一个gslTest工程,选择Release x64

配置下项目属性



至于gsl.dllgslcblas.dll两个文件直接放在工程目录下,免得去配置环境变量

测试代码如下

#include <stdio.h>
#include <gsl/gsl_matrix.h>int main(void)
{int i, j;gsl_matrix* m = gsl_matrix_alloc(3, 3);for (i = 0; i < 3; i++) {for (j = 0; j < 3; j++) {gsl_matrix_set(m, i, j, i + j);}}for (i = 0; i < 3; i++) {for (j = 0; j < 3; j++) {printf("m(%d,%d) = %g\n", i, j, gsl_matrix_get(m, i, j));}}gsl_matrix_free(m);return 0;
}

输出结果

m(0,0) = 0
m(0,1) = 1
m(0,2) = 2
m(1,0) = 1
m(1,1) = 2
m(1,2) = 3
m(2,0) = 2
m(2,1) = 3
m(2,2) = 4

最后,经实际测试,选择Debug x64模式,程序也可以正常运行。(不太理解,明明编译时选择的Release x64模式)

参考文献:

  1. WindowsVS2019环境下C++编译GSL
  2. GSL库使用cmake+vs2015编译

VS2019下编译与配置GSL2.7【Release x64版】相关推荐

  1. linux nginx编译安装mysql_Centos7下编译安装配置Nginx+PHP+MySql环境

    序言 这次玩次狠得.除了编译器使用yum安装,其他全部手动编译.哼~ 看似就Nginx.PHP.MySql三个东东,但是它们太尼玛依赖别人了. 没办法,想用它们就得老老实实给它们提供想要的东西. 首先 ...

  2. VS2019下编译x264.dll

    一.安装MSYS2 官网地址:MSYS2 64位选择x86_64版本,直接install就行 二. 在MSYS2中安装MinGW Update the package database and cor ...

  3. Linux下编译内核配置选项简介

    Code maturity level options 代码成熟度选项 Prompt for development and/or incomplete code/drivers 显示尚在开发中或尚未 ...

  4. gdal、proj、geos、sqlite等在VS2015下编译和配置

    环境 操作系统:Win10 开发平台:VS2015 CMake版本:CMake 3.22.0-rc3 1.  sqlite下载.配置.编译 1.1.下载 SQLite Download Page 根据 ...

  5. centos7二进制安装php,Centos7下编译安装配置Nginx+PHP+MySql环境

    序言 这次玩次狠得.除了编译器使用yum安装,其他全部手动编译.哼~ 看似就Nginx.PHP.MySql三个东东,但是它们太尼玛依赖别人了. 没办法,想用它们就得老老实实给它们提供想要的东西. 首先 ...

  6. linux php 编译安装_linux下编译安装配置php5.6.30过程

    在第一次编译安装php5.6.30失败后,参考了http://www.phpworld.cn/system/php/11.html的一些内容,第二次编译安装成功,特此记录过程. 一.编译安装php5. ...

  7. vs2019下编译LibreCAD

    1.编译环境: 1.1.vs2019 1.2.Qt5.13.0-mingw 64位+qt creator 4.9.1 1.3.boost1.71 2.步骤: 2.1.github里下载LibreCAD ...

  8. win10下编译和使用mnn 2021

    mnn版本1.2.0 Ubuntu子系统下Android编译教程,亲测ok: MNN编译android_jacke121的专栏-CSDN博客 编译转换工具: mnn 编译转换工具 win10 2021 ...

  9. 关于windows下的libtorch配置

    关于windows下的libtorch配置 1.环境 Windows service 2012 R2/Windows10 Cuda 9.0 OpenCV3.4.1 Libtorch1.0 VS2017 ...

最新文章

  1. ubuntu12.04 启动mysql_Ubuntu 12.04 MySQL改utf-8 启动不了
  2. 今年2月的微盟“删库”主角被判 6 年有期徒刑
  3. BZOJ4327 : JSOI2012 玄武密码
  4. 记一次坑爹的 “跨域” 问题
  5. BlockChain:《区块链世界简明生存指南(一块听听)》2017-06-06 李笑来—听课笔记分享(2)
  6. 应对恶劣网络环境,为php-curl设置超时限制,防止服务器卡死
  7. openssl 添加自定义算法_GitHub:用PyTorch实现17种深度强化学习算法
  8. SanDisk闪迪借助新型固态硬盘提升云计算性能和密度
  9. cmd中python -V版本显示不出来
  10. android简易跑马灯
  11. Delete带有子查询的sql优化,改为innerJoin解决
  12. zabbix node.js mysql_Zabbix添加Node.js监控的方法
  13. 南阳OJ 16 矩形嵌套
  14. 利用openssl进行base64的编码与解码
  15. 7-3 奇偶分家 (10 分)
  16. Python支持向量机(SVM)实例
  17. cannot import name ‘_validate_lengths的解决办法
  18. SQLSERVER的中文排序规则
  19. 富兰克林的13条人生箴言
  20. JS实现抽奖代码(0-999随机数开始暂停抽奖按钮)

热门文章

  1. java web架构配置_javaweb(1) tomcat配置和web程序结构
  2. 自动化测试平台及可视化界面
  3. ubuntu 强制关闭程序或窗口方法
  4. 关于cox单因素与多因素分析
  5. PV、UV、VV、IP是什么意思?
  6. 涅普计划-PHP入门
  7. MAC搭建Github/Vim看代码环境
  8. 【C语言基础】关于电子科技大学的复试c语言试题
  9. 我的python程序_我试着运行我的python程序,但当我运行它时什么也没有发生
  10. 使用md5+salt+hash散列查询