尝试使用 Qt5、OpenCV 2.4.9 和 VC2013 编译器制作项目时获取LNK1104



在发布这个问题之前,我已经搜索了许多教程,但是,所有这些教程都已经过时了,或者使用mingw64作为编译器。

我已经将opencv/build/x64/bin添加到系统路径中,在VS2013中使用新项目时没有问题(包括Qt5和opencv 2.4.9)。

最终,我仍然想尝试使用qt creator,因为将项目源代码打包并分配给我的合作伙伴是非常干净的。

我尝试在测试项目的 .pro 文件中添加以下行:

# OPENCV
OPENCV_BUILD_PATH = "D:/opencv/build"
OPENCV_INCLUDE_PATH = "$${OPENCV_BUILD_PATH}/include/"
INCLUDEPATH += "$${OPENCV_INCLUDE_PATH}"
LIBS += "$${OPENCV_BUILD_PATH}/x64/vc12/bin/*.dll"
LIBS += "$${OPENCV_BUILD_PATH}/x64/vc12/lib/*.lib"
LIBS += -lopencv_core249 -lopencv_highgui249 -lopencv_imgproc249

链接时出现此错误:

错误: LNK1104: 无法打开文件 'D:\opencv\build\x64\vc12\bin.obj'

我知道应该在项目设置文件中完成一些步骤或一些选项,但真的不知道怎么做,因为 mingw64 和 vc12 编译器不同,我对它们的选项知之甚少。

如果你能帮我弄清楚如何做到这一点,那就太好了。

谢谢。

尝试更改您的 LIBS 行。(不,您不想链接 DLL,我也怀疑通配符是否可以接受,并且您缺少通往库的路径的 -L 内容)

LIBS += -L"$${OPENCV_BUILD_PATH}/x64/vc12/lib
LIBS += -lopencv_core249 -lopencv_highgui249 -lopencv_imgproc249

在很长一段时间没有触及这个之后,我返回,删除Qt Creator之前制作的所有目录,似乎运行干净所有并重建所有都没有完全干净。之后,我尝试运行qmake,错误消失了。

运行 qmake 刷新项目配置是非常必要的,当时我认为 qmake 会在编辑/保存 .pro 文件时自动运行。但我错了,然后手动操作解决了问题。

最新更新