opencv编译时错误”fatal error LNK1104: 无法打开文件“opencv_world310d.lib” WIN10+VS2013+OPENCV3.0

2025-03-10 22:28:11
推荐回答(5个)
回答1:

1、右键点击vs2013属性。点击链接器-输入-附加依赖库,检查路径是否是绝对路径。

2、配置附加依赖项的时候,把版本号改为opencv_world320d.lib,就可以了。

编译有两种:Debug和Release,分别对应opencv_worldxxxd.lib和opencv_worldxxx.lib(后缀有无d来区分),对旧版本代码修改记得都修改清楚。

扩展资料:

fatal error LNK1104:无法打开文件的解决方法:

1.有的人是用的同一个大版本的openCV,比如都是openCV 2.x这个版本的,但也报了这样的错,那就是在配置附加依赖项的时候,没注意版本号写错了(比如opencv_core249d.lib写成opencv_core245d.lib这样的错误),仔细检查一下配置路径和文件名就是了。

2.有的人是在项目中出错。项目是有依赖关系的,子项目的一些文件是继承自父项目的,要跑子项目,那就先去检查下父项目都链接了些什么库,核对一下和自己用的openCV版本有没有出入。

OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows、Android和Mac OS操作系统上。

它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。


回答2:

使用vs2013右键点击解决方案属性,找到里面的链接器->输入项,看一下项目的附加依赖项是不是仍然配置的是opencv_world320d.lib,把它改成3.0版本的lib库就行了

回答3:

检查项目的引用的lib

~~~~~~~~~~~

回答4:

我有个跟你很像的问题,刚刚解决,希望能给你点帮助。

我也是得到高人指点:

首先,一定有这样一个逻辑,既然出现的问题是310文件缺失而你配置的是300,那一定是在你的程序调用opencv的时候先链接到310的文件夹而它又找不到310的那个文件,所以一定是你什么时候在哪里添加了310的路径或者是310的lib。

你检查一下三个地方:

  1. 系统环境变量中是否还存在310相关的路径;

  2. VS2013中(新建的,如果你是采用新建属性表的方式的话)属性表中那“三个添加属性的地方”是否还存在310相关的路径;

  3. VS2013中“最根本的属性表”(如果你采用的是所谓“永久”、“一劳永逸”的方式添加属性的话)中那三个添加属性的地方”是否还存在310相关的路径;

好了,如果发现确实存在,那么一定将310有关的全部删除;

但我在删除中发现有个问题,原来的路径存在于继承的值中,直接删删不了。那么请参考网页链接,注意要以管理员的身份运行VS。

以上就是我解决问题的过程。

回答5:

试试换成opencv_world300d.lib