0
我正在看opencv highgui示例(像connectedcomponents.cpp)並嘗試習慣添加GUI元素。目前,我想添加一個按鈕:如何爲OpenCV和Qt設置鏈接以使用createButton?
void on_button(int, void*){
cout << "click" << end;
}
//in main()
createButton("test",on_button);
但我得到一個鏈接錯誤:
g++ -c -pipe -g -gdwarf-2 -arch x86_64 -Xarch_x86_64 -mmacosx-version-min=10.5 -Wall -W -DQT_CORE_LIB -I../../../QtSDK/Desktop/Qt/474/gcc/mkspecs/macx-g++ -I. -I../../../QtSDK/Desktop/Qt/474/gcc/lib/QtCore.framework/Versions/4/Headers -I../../../QtSDK/Desktop/Qt/474/gcc/include/QtCore -I../../../QtSDK/Desktop/Qt/474/gcc/include -I/opt/local/include -I../../../QtSDK/Desktop/Qt/474/gcc/include -I. -F/Users/george/QtSDK/Desktop/Qt/474/gcc/lib -o main.o main.cpp
g++ -headerpad_max_install_names -arch x86_64 -Xarch_x86_64 -mmacosx-version-min=10.5 -o CVConnectedComponent main.o -F/Users/george/QtSDK/Desktop/Qt/474/gcc/lib -L/Users/george/QtSDK/Desktop/Qt/474/gcc/lib /opt/local/lib/libopencv_core.dylib /opt/local/lib/libopencv_contrib.dylib /opt/local/lib/libopencv_highgui.dylib /opt/local/lib/libopencv_objdetect.dylib /opt/local/lib/libopencv_imgproc.dylib /opt/local/lib/libopencv_features2d.dylib /opt/local/lib/libopencv_video.dylib -framework QtCore -F/Users/george/Documents/Qt/CVConnectedComponent/../../../QtSDK/Desktop/Qt/474/gcc/lib/
Undefined symbols:
"cv::createButton(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, void (*)(int, void*), void*, int, bool)", referenced from:
_main in main.o
make: Leaving directory `/Users/george/Documents/Qt/CVConnectedComponent'
ld: symbol(s) not found
至於我能理解,我不反對鏈接的QtCore庫正常。 我有這樣的:
mac: LIBS += -framework QtCore
這:
mac: LIBS += -F$$PWD/../../../QtSDK/Desktop/Qt/474/gcc/lib/ -framework QtCore
INCLUDEPATH += $$PWD/../../../QtSDK/Desktop/Qt/474/gcc/include
DEPENDPATH += $$PWD/../../../QtSDK/Desktop/Qt/474/gcc/include
在Qt工程的.pro文件,但沒有運氣。 我在osx 10.6.8上使用OpenCV 2.4.1和Qt 4.7.4。
鏈接到Qt Creator中的QtCore以在OpenCV中使用createButton的正確方法是什麼?
'CV :: createButton'不是'Qt'框架的一部分。 (即使是這樣,你也必須連接'QtCore'和'QtGui')。你可能應該鏈接'highgui' – Lol4t0 2012-07-28 11:26:01
我不知道,我認爲highgui在幕後引用Qt。我已經鏈接到libopencv_highgui.dylib,但仍然沒有找到符號錯誤 – 2012-07-28 11:29:11
而我試過鏈接對QtCore和QtGui框架沒有運氣:( – 2012-07-28 14:47:58