2015-11-05 1 views
1

Я создаю приложение Kinect с помощью Qt и C++, и мне нужно использовать библиотеку OpenCV. Я правильно установил OpenCV и включил заголовок OpenCV <opencv2\opencv.hpp> в свой исходный файл, и это единственный заголовок, который я буду использовать. Я пытался строить свой проект в визуальной студии, и она работала хорошо, но сейчас я пытаюсь построить проект в Qt Creator, и это дает мне эту ошибку сборки:Ошибка компоновщика Qt Creator: LNK1104: невозможно открыть файл 'opencv_core249d.lib'

LNK1104: cannot open file 'opencv_core249d.lib'

Так вот мой файл проекта:

# ---------------------------------------------------- 
# This file is generated by the Qt Visual Studio Add-in. 
# ------------------------------------------------------ 

TEMPLATE = app 
TARGET = MM_demo 
DESTDIR = ../Debug 
QT += core opengl widgets gui 
CONFIG += debug 


#include directories 
KINECT_INC_DIR = $$(KINECTSDK10_DIR)inc 
OPENCV_INC_DIR = $$(OPENCV_DIR)\include 

#library directories 
OPENCV_LIB_DIR = $$(OPENCV_LIBRARY_DIR) 
KINECT_LIB_DIR = $$(KINECTSDK10_DIR)lib\amd64 

DEFINES += QT_OPENGL_LIB QT_WIDGETS_LIB 
INCLUDEPATH += $$KINECT_INC_DIR $$OPENCV_INC_DIR 
DEPENDPATH += $$OPENCV_LIB_DIR $$KINECT_LIB_DIR 

message(opencv lib directory $$OPENCV_LIB_DIR) 
message(kinect lib directory $$KINECT_LIB_DIR) 


LIBS += -L"." \ 
    -lopencv_core249d \ 
    -lkinect10 \ 

MOC_DIR += ./GeneratedFiles/debug 
OBJECTS_DIR += debug 
UI_DIR += ./GeneratedFiles 
RCC_DIR += ./GeneratedFiles 
include(MM_demo.pri) 

Я использую Qt 5.5.2 MSVC2013 64bit на окне 8.1. Моя переменное OpenCV среды являются: OPENCV_DIR: C:\opencv\build и OPENCV_LIB_DIR: C:\opencv\build\x64\vc10\lib

Моего OpenCV включают каталог C:\opencv\build\include и его библиотека каталог C:\opencv\build\x64\vc10\lib. Я уверен, что я поместил правильные пути include и library в файл .pro. Я искал решение весь день и видел некоторые похожие проблемы с компоновщиками в Интернете, но ни один из них не решил мою проблему. Я буду благодарен всем, кто имеет представление о том, что происходит с моим файлом .pro или чем-либо еще.

ответ

1

Вы установили OPENCV_LIB_DIR в качестве переменной окружения, но она должна быть OPENCV_LIBRARY_DIR, потому что операционная система не имеет никакой информации о первом члене в строке ниже, но она будет выглядеть для второй переменной:

OPENCV_LIB_DIR = $$(OPENCV_LIBRARY_DIR)