vs2015+openblas环境配置,解决找不到libopenblas.dll问题

准备工作:

1.OpenBLAS下载:https://sourceforge.net/projects/openblas/files/v0.2.14/
百度网盘: https://pan.baidu.com/s/1GxZUoznlZ_R8fk8SXHMssA 提取码: ixcj 选择源码压缩文件

2.perl安装:https://strawberryperl.com/ 选择windows
百度网盘: https://pan.baidu.com/s/1qXwBB73dCcCHGiVI8-U70Q 提取码: sv4v
下载的文件名为:strawberry-perl-5.32.1.1-64bit.msi
下载perl

3.CMake安装:https://cmake.org/download/
百度网盘: https://pan.baidu.com/s/1dk8BdPyNR6vHOW4t9kM3jA 提取码: c83s
下载CMake安装包

4.vs2015下载:https://pan.baidu.com/s/1No5LoDLRie2xP8-0cNOwBQ 密码:4j2b


配置:

目标是获得以下几个文件:
cblas.h为首的一批头文件,包含函数的定义。
libopenblas.dll 动态链接库,包含函数的实现。
libopenblas.lib 这个是辅佐上面的dll工作的,大概就是说明一下有什么函数之类的。

1.OpenBLAS配置
解压下载的OpenBLAS-0.3.20_2.zip文件,假定解压到D:\OpenBLAS。

2.安装perl
找到下载的strawberry-perl-5.32.1.1-64bit.msi文件,双击安装,安装路径自己选择,一直下一步直到成功。
win+r,运行cmd,输入perl -v得到下图即安装成功。
perl安装成功

3.安装并配置CMake
(1) 在之前解压得到的D:\OpenBLAS目录下新建build文件夹。
(2) 双击下载的cmake-3.24.0-rc3-windows-x86_64.msi文件,安装路径自己选择,一路下一步,直到出现下图:
环境变量配置
(3) 打开CMake的图形界面(从安装的根目录里可以找到带gui的)

(4) CMake界面上方需要填写两个目录。
Where is the source code: 填写OpenBLAS源码所在的目录。根据这里的假设,应该填D:\OpenBLAS。
Where to build the binarys: 生成的解决方案放在哪里。根据这里的假设,应该填D:\OpenBLAS\build。
Cmake配置1

(5) 点CMake下方的configure,再点旁边的generate。这里应该会显示:Current Generator: Visual Studio 14 2015。
生成.sln文件
(6) 完成后,D:\OpenBLAS\build下应该能看到.sln了。点击Open Project即可通过VS2015打开它。

(7) 在右侧解决方案资源管理器中,右键最上面的项目,点生成。之后应该会显示全部生成成功。在新建的build文件夹中会生成一系列的文件。

4.vs2015配置
(1) 在VS2015中新建空项目test00,右击test00,选择属性
vs2015配置1
(2) 包含目录:项目-属性-VC++目录-包含目录,按这里的假设,添加D:\OpenBLAS\lapack-netlib\CBLAS\include。这个目录下有cblas.h。
(3) 库目录: 项目-属性-VC++目录-库目录, 按这里的假设,添加D:\OpenBLAS\build\lib。这个目录下有libopenblas.lib。
vs2015配置2

(4) 项目-属性-链接器-输入-附加依赖项,添加libopenblas.lib。
vs2015配置3
(5) 新建main.c,内容如下:

#include <cblas.h>
#include <stdio.h>
#include <stdlib.h>

void main() {

	int i = 0;
	double A[6] = { 1.0, 2.0, 1.0, -3.0, 4.0, -1.0 };
	double B[6] = { 1.0, 2.0, 1.0, -3.0, 4.0, -1.0 };
	double C[9] = { .5, .5, .5, .5, .5, .5, .5, .5, .5 };

	int M = 3; // row of A and C
	int N = 3; // col of B and C
	int K = 2; // col of A and row of B

	double alpha = 1.0;
	double beta = 0.0;

	cblas_dgemm(CblasRowMajor, CblasNoTrans, CblasNoTrans, M, N, K, alpha, A, K, B, N, beta, C, N);

	for (i = 0; i < 9; i++) {
		printf("%lf ", C[i]);
	}
	printf("\n");

	system("pause");
}

(6) 点击生成解决方案
生成解决方案
报错:1>d:\openblas\lapack-netlib\cblas\include\cblas.h(27): fatal error C1083: 无法打开包括文件: “cblas_mangling.h”: No such file or directory
无法打开包括文件: “cblas_mangling.h”
解决方法:
a.在OpenBLAS目录中搜索cblas_mangling_with_flags.h.in,备份,然后将其改名为cblas_mangling.h
(7) 把 D:\OpenBLAS\build\lib\DEBUG中的openblas.dll复制到main.c的同一目录下并重命名为libopenblas.dll。
(8) 生成解决方案,编译通过。
编译通过
(9) 点击运行,控制台输出结果
控制台输出


参考文献:

提示:这里简述项目相关背景:

1.Win10 + VS2013 配置OpenBLAS
2.OpenBLAS简介及在Windows7 VS2013上源码的编译过程
3.Windows 10 VS2015 环境下安装使用BLAS线性代数库


  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

世尘陌路

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值