Это круто! Пожалуйста, не путайте это с вопросом новичка;) У меня слишком много миль в этом статическом материале OpenCV + MinGW для простых ошибок ....
Окружающая среда: а. Qt 5.0.1 построен с использованием MinGW (стандартная загрузка с открытым исходным кодом из qt-project) - так что все построено в той же среде MinGW. б. Используя CMake, я установил минимальную сборку (используя тот же g ++ / gcc, что и Qt) и отключил SHARED_LIBRARIES. c. сгенерированный cmake + mingw32-make + mingw32-make install работает нормально.
здесь все выглядит довольно гладко ...
Теперь, когда я добавил:
win32-g++:INCLUDEPATH += D:/Dev/opencv/build/install/include
win32-g++:LIBS += -LD:/Dev/opencv/build/install/lib
win32-g++:LIBS += -static
win32-g++:LIBS += -llibopencv_core243d
win32-g++:LIBS += -llibopencv_imgproc243d
win32-g++:LIBS += -llibopencv_highgui243d
(а также без дополнения "win32-g ++" ..)
Я получаю d:/dev/qt/qt5.0.1/tools/mingw/bin/../lib/gcc/i686-w64-mingw32/4.7.2/../../../../i686-w64-mingw32/bin/ld.exe: cannot find -llibopencv_highgui243d
...
...
теперь ... У меня есть libopencv_highgui243d.a в правильном каталоге, но компоновщик ld.exe игнорирует все, кроме библиотеки! который должен был быть библиотекой MS (чего я хотел избежать в первую очередь !!!) - я даже попытался переименовать файлы .a в .lib, из-за чего компоновщик рассматривал файлы, но показывал много "не связанных" ошибок ...
Так кто виноват? компоновщик? CMake? мингв? Qt? ....
Я пробовал много параметров командной строки / флага, но безуспешно ..
LIBS += -lopencv_core243d
- person karlphillip   schedule 17.02.2013LIBS
(включая расширение файла. Пример:LIBS += D:/blah/blah/libopencv_highgui243d.a
- person karlphillip   schedule 17.02.2013