未找到Matconvnet错误cl.exe



我已经从VLFeat安装了MatConvNet,我正在尝试编译它。但是当我试图运行vl_compilenn时,它显示了以下错误:

vl_compilenn
Warning: CL.EXE not found in PATH. Trying to guess out of mex setup. 
> In vl_compilenn>check_clpath (line 580)
  In vl_compilenn (line 413) 
'cl.exe' is not recognized as an internal or external command, 
operable program or batch file. 
Error using vl_compilenn>check_clpath (line 591)
Unable to find cl.exe
Error in vl_compilenn (line 413)
    check_clpath(); % check whether cl.exe in path

安装visual studio社区版(这是免费版)(minwg编译器将无法工作)去C:Program Files (x86)Microsoft Visual Studio搜索"cl.exe"选择适合您的计算机体系结构的版本,并将其复制到包含matconvnet安装的文件夹中运行mex -setup c++并将其设置为visual studio你可以开始了

我已经将cl.exe目录添加到我的系统PATH变量中(您需要在该操作后重新启动Matlab)并且编译成功。check_clpath()函数无法找到cl.exe的正确位置,因为它试图在不存在的目录中找到可执行文件:

cl_path =
'C:Program Files (x86)Microsoft Visual Studio2017CommunityVCbinamd64'

在将cl.exe目录添加到PATH变量之后,在我的例子中:

C:Program Files (x86)Microsoft Visual Studio2017CommunityVCToolsMSVC14.16.27023binHostx64x64

编译成功

Matlab接受Visual Studio编译器的专业版本,这是我在Matlab论坛上的一个帖子中发现的。

下面是一个更简单的解决方案,

addpath(fullfile('C:', 'Program Files (x86)', 'Microsoft Visual Studio', '2017', 'Professional', 'VC', 'Tools', 'MSVC', '14.16.27023', 'bin', 'Hostx64', 'x64'));

Matlab Post参考:https://se.mathworks.com/matlabcentral/answers/271382-mex-won-t-recognize-microsoft-visual-c-compilers

这对我有用

  1. 安装社区visual studio 2019专业版https://visualstudio.microsoft.com/es/downloads/
  2. 移动到安装程序放置visual studio的目录。就我而言C:Program Files (x86)Microsoft Visual Studio2019Professional
  3. 找到适合您的主机和目标体系结构的cl.exe(有四种组合x86/x64)。在我的例子中,x64/x64导致C:Program Files (x86)Microsoft Visual Studio2019ProfessionalVCToolsMSVC14.27.29110binHostx64x64将路径放在系统
  4. 的环境变量中
  5. 在matlab中,移动到CF2-masterexternalmatconvnetmatlab并执行vl_compilenn

遗憾的是,MatConvNet当前版本不支持MinGW编译器。在Windows上,您需要安装Microsoft Visual Studio。现在你可以免费下载社区版,例如在这里。

MatConvNet不支持MinGW的原因之一是在windows上它使用GDI+库来加速读取图像文件。您可以尝试使用以下命令编译它:vl_compilenn('EnableImreadJpeg', false)

cl.exe是一个c++编译器

此消息表示程序无法在您的计算机上找到此文件(可能是因为它实际上不在那里,或者因为您没有指明它的位置)

如果你实际上有一个c++编译器和Windows工作,去你的PC的属性->高级设置->环境变量(对不起,如果名字不准确,我的电脑是在法语,但应该是类似的…)。这里将有一个名为PATH的字段,其中很可能已经设置了一些路径。通过添加你的c++编译器的路径(包含cl.exe的文件夹)来修改它,然后重新启动你的计算机(否则你的更改不会被考虑在内)。

我不知道如何为其他操作系统做…

否则,你需要下载一个c++编译器。

我也有同样的问题,这是,因为我改变了MS VS的安装位置。

我只是在vl_compilenn中添加了它的路径。m(第646行之后)

% cl_path = fullfile(cc.Location, 'VC', 'bin', 'amd64');
cl_path = 'E:WorkingSoftwareVS2017EnterpriseVCToolsMSVC14.11.25503binHostX64x64';

相关内容

  • 没有找到相关文章

最新更新