2014-05-18 56 views
0

我在OSX上的Qt 5.2中使用openCV 2.4.6.1。一切都很好,但是當我嘗試使用cv :: CascadeClassifier時,會發生鏈接錯誤,告訴我這個符號沒有爲體系結構x86_64定義。任何想法解決這個問題?謝謝。架構x86_64的未定義符號:cv :: CascadeClassifier :: CascadeClassifier()

TEMPLATE = app 
TARGET = camera 

QT += multimedia multimediawidgets 

INCLUDEPATH += /usr/local/Cellar/opencv/2.4.6.1/include \ 

LIBS += -L/usr/local/Cellar/opencv/2.4.6.1/lib \ 
    -lopencv_core \ 
    -lopencv_imgproc \ 
    -lopencv_features2d \ 
    -lopencv_highgui 

HEADERS = \ 
    camera.h \ 
    imagesettings.h \ 
    videosettings.h \ 


SOURCES = \ 
    main.cpp \ 
    camera.cpp \ 
    imagesettings.cpp \ 
    videosettings.cpp \ 

FORMS += \ 
    camera.ui \ 
    videosettings.ui \ 
    imagesettings.ui 

target.path = $$[QT_INSTALL_EXAMPLES]/multimediawidgets/camera 
INSTALLS += target 

QT+=widgets 
+0

你能證明你的項目文件? – lpapp

+0

@LaszloPapp嗨,我把它添加到問題。 – GilbertLee

+0

其實我的朋友使用cv :: imread()也有同樣的錯誤。我猜OpenCV中的一些函數導致錯誤 – GilbertLee

回答

1

您將需要LIBS變量在您的項目文件擴展如下因爲cv:CascadeClassifier可以在庫中找到:

LIBS += -L/usr/local/Cellar/opencv/2.4.6.1/lib \ 
    -lopencv_core \ 
    -lopencv_imgproc \ 
    -lopencv_features2d \ 
    -lopencv_highgui \ 
    -lopencv_objdetect # This is the addition 
+0

我認爲它很複雜。謝謝 – GilbertLee

相關問題