Я пытаюсь статические ссылки на библиотеки OpenCV на Windows. Я уже построил библиотеку с BUILD_SHARED_LIBS
OFF
, и я создал проект на Eclipse (кстати, использую MinGW). C:\opencv
установлен как мой источник, а C:\opencv\build\x86\mingw
установлен как пункт назначения на cmake-gui. Затем я выполнил mingw32-make и mingw32-make install на C:\opencv\build\x86\mingw
.Статическая ссылка OpenCV на Eclipse, работающая под Windows
Мой вопрос в том, как статические ссылки на эти библиотеки на Eclipse, я пробовал несколько способов, но мое приложение OpenCV по-прежнему не работает на компьютерах без установленного OpenCV.
Вот что я пытался до сих пор, я поставил
C:\opencv\build\x86\mingw\install\include
как включить папку;C:\opencv\build\x86\mingw\lib
как путь к библиотеке на "Linker" и у меня есть opencv_core246, opencv_highgui246, opencv_objdetect246 и opencv_imgproc246.
Таким образом, кажется, что он все еще использует «динамическое связывание», поэтому я попытался добавить -static на Прочих вариант, но тогда я получил эти ошибки:
C:\opencv\build\x86\mingw\lib\libopencv_imgproc246.a(templmatch.cpp.obj):templmatch.cpp:
(.text$_ZN2cv9crossCorrERKNS_3MatES2_RS0_NS_5Size_IiEEiNS_6Point_IiEEdi+0x1ce5):
undefined reference to `cv::dft(cv::_InputArray const&, cv::_OutputArray const&, int, int)'
C:\opencv\build\x86\mingw\lib\libopencv_imgproc246.a(templmatch.cpp.obj):templmatch.cpp:
(.text$_ZN2cv9crossCorrERKNS_3MatES2_RS0_NS_5Size_IiEEiNS_6Point_IiEEdi+0x1dab):
undefined reference to `cv::mulSpectrums(cv::_InputArray const&, cv::_InputArray const&, cv::_OutputArray const&, int, bool)'
C:\opencv\build\x86\mingw\lib\libopencv_imgproc246.a(templmatch.cpp.obj):templmatch.cpp:
(.text$_ZN2cv9crossCorrERKNS_3MatES2_RS0_NS_5Size_IiEEiNS_6Point_IiEEdi+0x1ded):
undefined reference to `cv::dft(cv::_InputArray const&, cv::_OutputArray const&, int, int)'
collect2: ld returned 1 exit status
Любой человек может предоставить мне реальную шаг- пошаговая статическая ссылка на библиотеку OpenCV на Windows с использованием Eclipse и MinGW?
EDIT: Я узнал, что в VS мы должны добавить библиотеки, такие как: libtiff.lib libpng.lib libjpeg.lib libjasper.lib IlmImf.lib zlib.lib, который я сделал, но проблема не устранена. Затем я слышал, что добавление Vfw32.Lib comctl32.lib решило проблему, но, к сожалению, я думаю, что они специфичны для VS.
Я попытался добавить эти сторонние библиотеки, как вы сказали, но -lopencv_lapack и -lrt не найден. Кстати, у вас есть идеи, как я должен «упорядочить» библиотеку OpenCV в правильном порядке? Как определить libraryA зависит от libraryB? – user2900552
попробуйте без lapack и lrt. У меня нет большой идеи. Я пытаюсь проверить шаблон, чтобы узнать это –