Win10+matlab2019b+Visual Studio2017+matcomvnet安装及编译

CPU版本编译

准备:

1. matconvnet

网上有很多下载地址,可以到官网http://www.vlfeat.org/matconvnet/

我下载是matconvnet-1.0-beta25

然后解压放置自己觉得合适的地方,我放到matlab安装文件里面

Win10+matlab2019b+Visual Studio2017+matcomvnet安装及编译_第1张图片

2.matlab 2019b 

matlab安装不在这里详细描述

3.Visual Studio2017

正好我电脑有以前安装好的2017版本,我就没有重新安装其他的版本,一般的话2015版本是现在最稳定的。

编译

1. 命令行输入以下命令,确保MATLAB已 配置为使用您的编译器

Win10+matlab2019b+Visual Studio2017+matcomvnet安装及编译_第2张图片

2. 将MatConvNet的path加到matlab路径中去

此步骤有两种方法

方法一:

在命令行输入

cd F:\MATLAB2019b\toolbox\matconvnet-1.0-beta25
addpath matlab

方法二:设置路径,添加路径

Win10+matlab2019b+Visual Studio2017+matcomvnet安装及编译_第3张图片

3.编译MatConvNet

在命令行输入

vl_compilenn

编译完以后,理论上没问题应该是在安装目录下的mex下,多出一系列的.mexw64 编译文件,(64位系统),如果没有就证明没有编译成功。

出现问题

问题1:输入mex -setup  mex -setup C++时出现“未找到支持的编译器或 SDK。您可以安装免费提供的 MinGW-w64 C/C++ 编译器”

网上有很多解决办法,一开始我以为是版本的问题,所以就将VS2015换成了VS2017,matlab2015换成了matlab2017a,结果还是不行。又安装MinGW-w64 C/C++ 编译器,安装在C盘一级目录下,也是不行。

解决办法:后来在网上看到一方法,安装MinGW-w64时选上gcc->vision下的的选项全选上,然后安装。结果成功。

注意:这个只是单纯的解决了编译器的问题,如果配置matconvnet,不能用以上办法。matconvnet在当前版本中不支持MinGW编译器,MatConvNet不支持MinGW的原因之一是在Windows上它使用GDI +库来加速读取图像文件,所以需要安装Microsoft Visual Studio。难怪matconvnet官网上配置过程中没有提到用MinGW编译器

所以我又将MinGW卸载了,还是在matlab上配置Microsoft Visual C++ 2017以进行 C++ 语言编译。

解决办法:因为matlab 2017中默认配置不包含vs2017的编译环境,需要人为去配置

需要下载文件msvc2017.xml和msvcpp2017.xml(链接:https://pan.baidu.com/s/1ba0OMGOe9QXoPA0ji4ggJw 密码:7lrn).注意:这个文件只适合vs2017,如果配置vs其他版本,需要找到对应版本的这两个文件下载。

并将他们复制到matlab相应的目录下就行了,比如我的:D:\matlab\R2017a\bin\win64\mexopts

成功!

问题2:虽然编译环境配置好,但是matconvnet->matlab->mex下还是没有生成编译好的文件,也就是还是没有编译成功。运行vl_compilenn,出现错误提示:警告: ”CL.EXE not found in PATH. Trying to guess out of mex setup. 'cl.exe' 不是内部或外部命令,也不是可运行的程序 或批处理文件。” 

解决办法:网上找了一些解决办法,比如添加环境变量什么的,我借鉴了以为外国网友的办法

在VS2017安装目录下,比如我的:D:\Visual Studio2017\Community\VC\Tools\MSVC\14.14.26428\bin,找到里面对应自己系统的cl.exe,将此复制到matconvnet目录下即可。

终于编译成功了!
 

问题3:

Win10+matlab2019b+Visual Studio2017+matcomvnet安装及编译_第4张图片

具体原因我也不知道是什么

只不过根据网上的教程解决成功了。

方法:重新运行一下matconvnet中matlab文件夹下的vl_setupnn函数就可以完美解决。

Win10+matlab2019b+Visual Studio2017+matcomvnet安装及编译_第5张图片

 

你可能感兴趣的:(Windows下深度学习,Windows)