在Installing and compiling the library——matconvnet-1.0-beta25时遇到的错误,总是提示“Invalid MEX-file

'C:\Users\hp\Documents\MATLAB\low_dose_CT-master\matconvnet-1.0-beta24\matlab\mex\vl_nnconv.mexw64':

找不到指定的模块。”vl_nnconv.mexw64找不到指定模块。

按照网址“https://www.vlfeat.org/matconvnet/install/#compiling”提示的,去安装matconvnet,在提示符输入“vl_compilenn”,又报错“警告: CL.EXE not found in PATH. Trying to

guess out of mex setup. ”“'cl.exe' 不是内部或外部命令,也不是可运行的程序

或批处理文件。 ”一时不知道如何是好?

估计是在电脑上没有真正安装visual studio的问题。为了用这个matconvnet,真是费劲。先是换了显卡,因为matlab里要求运行这个相应的代码需要英伟达的compiler,driver。好了装了显卡,安装了nvidia cuda 10.2,同时还要注意和安装的cudnn的版本要对上。

最后在C盘下Microsoft Visual Studio找到installer文件夹下setup.exe文件,去安装Microsoft Visual Studio community 2017,安装好了以后重启就可以用了。再次运行“vl_compilenn”M文件,报错“Could not find a valid NVCC executable”,在这个网址“https://blog.csdn.net/NeoLy123/article/details/104297741”里,作者提供了一个思路——需要指定我们电脑上安装CUDA的根目录,所以可以输入的命令:vl_compilenn('enableGpu', true, 'cudaRoot', 'C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2')。注意这里我安装的cuda版本是10.2,找到它。然后运行了一阵,还是报错:“nvcc fatal : Unsupported gpu architecture 'compute_86' ”。出现这个问题的原因是因为我装的cuda和matlab不兼容。应该是我的显卡3060算力(computing capability)达到8.6,而当前matlab版本达不到这个算力。具体匹配那个matlab版本,需要到英伟达官网查。这个网址上“https://zhuanlan.zhihu.com/p/356805461”也给我们提供了有用的信息。

对于提示“找不到cl.exe”,这个在安装了visual studio 2015版本以上以后(几个G),如果还出现这个问题,那就是没有找到cl.exe文件,我们在visual studio下找到这个文件,把visual studio的安装路径,以及cl.exe所在路径都添加到系统环境变量里面去,然后这个“找不到cl.exe”错误就能避免。

搞了好些天,发现为了跑通一段代码,compiling matconvnet,真正的困难其实是硬件搭建。摸索半天,这个问题其实思路应该这样。首先为了解决这个问题,要搞清楚自己的硬件到底怎么搭。装什么版本的cuda,装什么版本的matlab,什么版本的vs,什么版本的cudnn。这网站上的信息是有帮助的:

https://zhuanlan.zhihu.com/p/356805461

从而,我们知道这样配置“配置matconvnet:Window10+MATLAB R2015b+VS2015+cuda9.1+cudnn7.1.3”更可能是可行的:

https://blog.csdn.net/weixin_35642839/article/details/116038545

这样配置“R2015b+CUDA7.5+vs2013深度学习网络GPU搭建”可能是可行的。

https://blog.csdn.net/ccsss22/article/details/112572493

自己错在那里,你想matlab r2015b,cuda10.2,vs2015这样的配置,不符合搭建配置呀。搞半天。。。

重新装了matlab r2021a,再来搞,结果报这样的错“Failed to run C:/TDM-GCC-64/VC/bin/cl.exe (系统找不到指定的文件。). ”打开TDM-GCC-64这个文件夹,发现下面压根就没有vc文件夹,把“Microsoft Visual Studio 12.0\VC”下的整个VC搞过去。运行还是出错,后面重新装了vs 2022,再运行还是报错“c:\program files\nvidia gpu computing toolkit\cuda\v11.1\include\crt/host_config.h(238) : fatal error C1083: Cannot open include file: 'crtdefs.h': No such file or directory

”“出错 vl_compilenn (第 485 行) nvcc_compile(opts, srcs{i}, objfile, flags.nvcc)”。

vl_nnconv.mexw64找不到指定模块的更多相关文章

  1. 启动C:\Windows\System32\logiLDA.DLL时出现问题,找不到指定模块

    环境:windows8.1专业版 问题:启动C:\Windows\System32\logiLDA.DLL时出现问题,找不到指定模块 每次开机都会弹出上图所示的信息. 经过查找是罗技鼠标驱动的问题:而 ...

  2. C#调用SCL2008 动态库SCL_API_cdecl.dll or SCL_API_Stdcall.dll,提示找不到指定模块

    在公司用的联想 ThinkPad T430i,原装配置及系统,开机巨慢.按下开机键到登陆界面超过1分钟,再到桌面这个时间就难说了,多时有超过3分钟,进入桌面还要等待几分钟才能正常操作.新年过来向公司领 ...

  3. u盘中毒,启动显示找不到指定模块

    u盘中毒,插入电脑,启动显示找不到指定模块,关闭杀毒软件还是这样: 小编经常是在学校教室的电脑上插入U盘再拔出就出现这样的情况,遇到N次了, 所以决定把方法记录下来: (演示使用的是win10系统,其 ...

  4. 关于在PyCharm中import numpy 出现from . import _mklinit ImportError: DLL load failed: 找不到指定模块

    最近因为一些原因安装了Anaconda3并且重新配置Python环境,但是遇到了一些麻烦的事情. 首先就是在Anaconda已经装好numpy和mkl的情况下,在PyCharm中import nump ...

  5. c# DllImport 找不到指定模块

    两年前的一个项目,基于身份证阅读器的开发,之前都是在公司电脑上开发维护等,今天有需要用到自己的笔记本,只有vs2008和mysql5.5,以为足够,兴致勃勃的拿到客户那里现场解决问题,F5运行程序,程 ...

  6. asp.net调用非托管dll,无法加载 DLL,找不到指定模块解决方法。

    最近开发一个项目,里面用到了非.net开发的一个dll文件接口,发现发布到window2003服务器上后,运行网站总是提示 "无法加载 DLL"D:\11\1.dll": ...

  7. DeepFaceLab错误:DLL Load failed 找不到指定模块!

    这个错误不知道多少人遇到了,我反正是看到过不少次了.但是一直没有花时间去研究. 今日有空帮群友远程了一下,虽然搞了一会儿,最终还是搞定了,分享一下经验. ​ 问题描述:在执行2号脚本,视频转图片的时候 ...

  8. ASP.NET中引用dll“找不到指定模块"的完美解决办法 z

    DllImport是System.Runtime.InteropServices命名空间下的一个属性类,其功能是提供从非托管DLL导出的函数的必要调用信息.DllImport属性应用于方法,要求最少要 ...

  9. 关于C#使用Dllimport 导入vc++动态库后网站部署提示 “无法加载 DLL,找不到指定模块”的解决方法。

    这次项目需要,做了一个C#写的WebService服务给外部调用,服务内部引用了算法库,本地调试已经通过,现场部署服务时各种提示找不到DLL文件. 第一.如果是包含有32位库在64位服务器系统上运行, ...

  10. ASP.net发布项目引用了C++DLL后页面提示找不到指定模块的异常

    1.在引用C++dll的DllImport位置指定dll位置 [DllImport(@"C:\Windows\System32\DDyn_Method.dll", EntryPoi ...

随机推荐

  1. 96、nacos大量日志

    问题描述:access 日志大量打印,相关 Issue 点击这里.主要表现是: {nacos.home}/logs/access_log.2019-xx-xx.log类似格式文件名的日志大量打印,而且 ...

  2. inspeckage

    c:\ChangZhi\dnplayer2   d:\ChangZhi\dnplayer2然后在电脑的 terminal 中执行 " 端口转发 " 命令:adb forward t ...

  3. Java学习笔记(二)java流程控制

    学习笔记2 Java流程控制 这次也是跟着[狂神说Java]Java零基础学习视频通俗易懂继续学习的,持续学习,你我共勉. 一. 用户交互Scanner 1. Scanner对象 之前学的基本语法没有 ...

  4. MySQL 修改字段子表中的顺序

    修改字段排列位置 ALTER TABLE 表名 MODIFY 字段名1 数据类型 FIRST|AFTER 字段名2 参数说明 FIRST,可选参数 将字段1,修改为表的第一个字段. AFTER 字段名 ...

  5. K8s集群调度

    k8s 调度器 Scheduler 是 kubernetes 的调度器,主要的任务是把定义的 pod 分配到集群的节点上.听起来非常简单,但有很多要考虑的问题: 公平:如何保证每个节点都能被分配资源 ...

  6. Java面向对象之接口的定义与实现

    接口 普通类:只有具体实现 抽象类:具体实现和规范(抽象方法)都有! 接口:只有规范!自己无法写方法.专业的约束!约束和实现分离:面向接口编程 接口就是规范,定义的是一组规则,体现了现实世界中&quo ...

  7. 2022-05-10内部群每日三题-清辉PMP

    1.项目经理管理的一个项目不断面临挑战.发起人经常无法做出决定,存在大量预算超支,团队成员不断从项目离职,高级管理层没有提供实际的支持.项目经理应该怎么做? A.与团队一起开会,以确定造成这些问题的原 ...

  8. 探索如何在java中执行python脚本

    一个偶然的场景,笔者需要在java代码中执行某个python脚本,并且需要向脚本中传递参数,有可能的话,还要获取该脚本的某些执行结果,回到主程序中继续执行下去. 没有思路之前,狭隘的想法是,java中 ...

  9. VS2015使用gitee插件进行协同开发

    众所周知,软件项目壮大后是需要安装git,svn这些协同软件来进行合作开发的.最近接了一位电气工程师的活,让我帮忙开发一套上位机,这位工程师年数已高,仍热心学习编程每日至深夜.于是乎,我们商讨之下便决 ...

  10. Oracle UNDO表空间的管理

    Oracle UNDO表空间的管理 UNDO表空间的管理是Oracle DBA最重要的日常工作之一,UNDO表空间用来暂时存储DML操作的数据,其主要作用有: 1.事务回滚 2.实例恢复 3.读一致性 ...