为啥我收到无法打开文件'opencv_core2411d.obj'
Posted
技术标签:
【中文标题】为啥我收到无法打开文件\'opencv_core2411d.obj\'【英文标题】:why i am receiving cant open file 'opencv_core2411d.obj'为什么我收到无法打开文件'opencv_core2411d.obj' 【发布时间】:2015-03-23 14:14:45 【问题描述】:我正在尝试在 Visual Studio 2013 中使用 openCV-2.4.11 库,为此我遵循了 this tutorial 和 this slideshare tutorial
不幸的是,每次我运行任何 C++ 代码甚至“Hello world”时,编译器都会生成此错误Link: fatal error LINK1104: cant open file 'opencv_core2411d.obj'
我也在 SO 中提到了一些问题,但他们没有详细说明,或者他们讨论了导入 opencv 库但在另一个 IDE 而不是 Visual Studio 中。
注意:我在“附加依赖项”字段中用作链接器输入的库:
opencv_calib3d2411d.lib
opencv_contrib2411d.lib
opencv_core2411d.lib
opencv_features2d2411d.lib
opencv_flann2411d.lib
opencv_gpu2411d.lib
opencv_haartraining_engined.lib
opencv_highgui2411d.lib
opencv_imgproc2411d.lib
opencv_legacy2411d.lib
opencv_ml2411d.lib
opencv_nonfree2411d.lib
opencv_objdetect2411d.lib
opencv_photo2411d.lib
opencv_stitching2411d.lib
opencv_ts2411d.lib
opencv_video2411d.lib
opencv_videostab2411d.lib
我用的是win8
请提供将 opecv2.4.11 成功导入 visula studio 的步骤,并告诉我为什么会收到此错误
【问题讨论】:
提示:如果删除opencv_core2411d.lib
开头的空格会怎样?它在发布中工作吗?
@Kornel 我检查了链接器->输入:我发现上面列出的库是在没有前导空格的情况下添加的
这很有趣,因为 VS 不应该自己链接任何目标文件。你确定你没有交换扩展名?您没有其他设置错误的项目吗?
你说的wapping设置是什么意思??因为我是 VS 和 C-++ 的新手,所以我在调试和发布中创建了一些项目,但我不知道它们是否会影响任何即将到来的项目!所以,是的,也许我创建了设置错误的项目,所以我应该知道什么
【参考方案1】:
根据我的经验,链接器错误:
链接:致命错误 LINK1104:无法打开文件“opencv_core2411d.obj”
通常意味着链接器找不到文件。这通常是因为链接器属性不正确。
查看linker->“Additional Library Directories”下的属性页,确保已填写且路径正确。
根据您的项目设置方式,您可能有不同的调试和发布配置设置。
【讨论】:
【参考方案2】:我也遇到同样的问题很长一段时间了,在互联网上到处搜索后,我终于找到了解决方案。 这些输入文件是正确的,但您需要在 Linker->Input->Additional Dependencies 中提供完整路径。我会告诉你怎么做。
C:\opencv\build\x64\vc12\lib\opencv_calib3d2411d.lib
C:\opencv\build\x64\vc12\lib\opencv_contrib2411d.lib
C:\opencv\build\x64\vc12\lib\opencv_core2411d.lib
C:\opencv\build\x64\vc12\lib\opencv_features2d2411d.lib
C:\opencv\build\x64\vc12\lib\opencv_flann2411d.lib
C:\opencv\build\x64\vc12\lib\opencv_gpu2411d.lib
C:\opencv\build\x64\vc12\lib\opencv_highgui2411d.lib
C:\opencv\build\x64\vc12\lib\opencv_imgproc2411d.lib
C:\opencv\build\x64\vc12\lib\opencv_legacy2411d.lib
C:\opencv\build\x64\vc12\lib\opencv_ml2411d.lib
C:\opencv\build\x64\vc12\lib\opencv_objdetect2411d.lib
C:\opencv\build\x64\vc12\lib\opencv_ocl2411d.lib
C:\opencv\build\x64\vc12\lib\opencv_photo2411d.lib
C:\opencv\build\x64\vc12\lib\opencv_stitching2411d.lib
C:\opencv\build\x64\vc12\lib\opencv_superres2411d.lib
C:\opencv\build\x64\vc12\lib\opencv_ts2411d.lib
C:\opencv\build\x64\vc12\lib\opencv_video2411d.lib
C:\opencv\build\x64\vc12\lib\opencv_videostab2411d.lib
同样在Linker->General->Use Library Dependency Input,点击yes 这肯定会有所帮助。
【讨论】:
以上是关于为啥我收到无法打开文件'opencv_core2411d.obj'的主要内容,如果未能解决你的问题,请参考以下文章
为啥我收到错误 LNK1104:无法打开文件 'glew32.lib'
无效或损坏的 lib 文件 opencv_core220d.lib
无法加载 DLL 'opencv_core242':找不到指定的模块。恩古简历