Я недавно установил Fedora 18 через несколько лет под Ubuntu.
После соответствующих обновлений я загружаю и перекомпилирую мои любимые библиотеки, такие как Opencv и PCL.
Чтобы проверить, все ли в порядке, я попытался скомпилировать следующий код:
cv::Mat im = cv::imread("023.JPG");
cv::resize(im.clone(),im,cv::Size(600,800));
cv::imshow("default",im);
cv::waitkey(0);
Шаг компиляции выглядит успешно, но когда я пытаюсь выполнить этот код, я получаю следующее:
/ Главная / Jonny / Desktop / прог / MMSE_SD2 / test_opencv-сборка-рабочий стол-Qt_4_8_4_in_PATH_система_Release / test_opencv:
ошибка поиска символа:
/ Главная / Jonny / Desktop / прог / MMSE_SD2 / test_opencv-сборка-рабочий стол-Qt_4_8_4_in_PATH_система_Release / test_opencv:
неопределенный символ: _ZN2cv12_OutputArrayD1Ev
Я использую qtcreator в качестве IDE.
Мой .pro файл выглядит так:
INCLUDEPATH +=/usr/local/include/opencv-2.4.9
LIBS += -lopencv_core \
-lopencv_highgui \
-lopencv_imgproc \
-lopencv_calib3d \
-lopencv_contrib \
-lopencv_features2d \
-lopencv_flann \
-lopencv_legacy \
-lopencv_ml \
-lopencv_objdetect \
-lopencv_video
SOURCES += \
main.cpp
Я трижды перекомпилировал библиотеку opencv без успеха.
Если кто-то может помочь, я действительно ценю.
заранее спасибо
Jonny
Я предполагаю, что у вас установлена более старая версия OpenCV, и ваша программа связана с неверными библиотеками во время выполнения.
Вы можете легко проверить это, позвонив ldd <binary>
, в котором будут перечислены библиотеки, с которыми будет связан ваш бинарный файл. Если это не те файлы, которые вы установили в / usr / local / lib /, вы можете решить эту проблему, установив LD_LIBRARY_PATH.
Других решений пока нет …