VS2019下编译与配置GSL2.7【Release x64版】

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编译

猜你喜欢

转载自blog.csdn.net/Star_ID/article/details/125710578