尝试使用Qt5,使用VC2013编译器的OpenCV 2.4.9创建项目时获取LNK1104

时间:2014-11-26 03:26:07

标签: c++ qt opencv visual-studio-2013 qt-creator

在发布这个问题之前,我已经搜索了很多教程,但是,所有教程都已过时,或者使用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编译器不同,我不太了解它们的选项

如果你能帮我弄清楚如何做到这一点会很好。

谢谢。

2 个答案:

答案 0 :(得分:1)

尝试更改LIBS行。 (不,你不想联系dll,我也怀疑是否可以接受通配符,并且你错过了一条通往libs路径的-L事物)

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

答案 1 :(得分:0)

经过很长一段时间没有碰到这个,我回头,删除Qt Creator之前制作的每个目录,它似乎正在运行清理所有并重建所有没有做完全清理。之后我尝试运行qmake,错误消失。

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