Не удалось найти OpenCV во время соединения (компилируют из источника),

Я пытаюсь скомпилировать qgifer-0.2.1-source из его источника в Ubuntu. У меня есть все установленные зависимости. Я компилирую согласно ниже инструкции от readme источника.

cd qgifer_source_dir
mkdir build && cd build
cmake .. -DCMAKE_INSTALL_PREFIX="/usr/local/" -DQUIET_MODE=ON
make
sudo make install

Все пошло прекрасное включая компиляции и obj создание, но когда оно начинает связываться, файл frameplayer.cpp неудавшийся.

Это, кажется, проблема с пакетом OpenCV. Я установил OpenCV согласно инструкции.

Детали OpenCV:

$ pkg-config opencv --libs
-L/usr/local/lib -lopencv_shape -lopencv_stitching -lopencv_objdetect -lopencv_superres -lopencv_videostab -lopencv_calib3d -lopencv_features2d -lopencv_highgui -lopencv_videoio -lopencv_imgcodecs -lopencv_video -lopencv_photo -lopencv_ml -lopencv_imgproc -lopencv_flann -lopencv_core -lopencv_hal 

Ошибочный файл frameplayer.cppзаголовок содержит:

#ifndef FRAMEPLAYER_H
#define FRAMEPLAYER_H

#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>

OpenCV установлен в моей системе как это:

a) это содержит cmake файлы конфигурации для OpenCV

/usr/local/share/OpenCV

b) hpp файлы (ядро, highgui..) присутствует в

/usr/local/include/opencv2

Они я попробовал, но не работал

a) переустановите openCV

b) настройте источник снова путем изменения заголовочного файла с полным hpp путем к файлу и сделайте

Любая справка ценилась бы.

Детали ошибки:

arindam@arindam-sandbox:~/Downloads/qgifer-0.2.1-source/build$ sudo make
[  1%] Generating qrc_res.cxx
[  3%] Generating src/moc_frameplayer.cxx
[  4%] Generating src/moc_previewwidget.cxx
[  6%] Generating src/moc_mainwindow.cxx
..............
..............
[ 96%] Building CXX object CMakeFiles/qgifer.dir/src/moc_interpolationdialog.cxx.o
[ 98%] Building CXX object CMakeFiles/qgifer.dir/src/moc_textobject.cxx.o
[100%] Building CXX object CMakeFiles/qgifer.dir/qrc_res.cxx.o
Linking CXX executable qgifer
CMakeFiles/qgifer.dir/src/frameplayer.cpp.o: In function `FramePlayer::FramePlayer(QWidget*)':
frameplayer.cpp:(.text+0x984): undefined reference to `cv::VideoCapture::VideoCapture()'
frameplayer.cpp:(.text+0xddf): undefined reference to `cv::VideoCapture::~VideoCapture()'
CMakeFiles/qgifer.dir/src/frameplayer.cpp.o: In function `FramePlayer::~FramePlayer()':
frameplayer.cpp:(.text+0xf07): undefined reference to `cv::VideoCapture::~VideoCapture()'
CMakeFiles/qgifer.dir/src/frameplayer.cpp.o: In function `FramePlayer::~FramePlayer()':
frameplayer.cpp:(.text+0xf77): undefined reference to `cv::VideoCapture::~VideoCapture()'
CMakeFiles/qgifer.dir/src/frameplayer.cpp.o: In function `FramePlayer::nextFrame()':
..............
mainwindow.cpp:(.text+0x6f8c): undefined reference to `cv::VideoCapture::isOpened() const'
mainwindow.cpp:(.text+0x7139): undefined reference to `cv::VideoCapture::get(int) const'
collect2: error: ld returned exit 1 status
CMakeFiles/qgifer.dir/build.make:1123: recipe for target 'qgifer' failed
make    [2]: ***     [qgifer] Error 1
CMakeFiles/Makefile2:60: recipe for target 'CMakeFiles/qgifer.dir/all' failed
make    [1]: ***     [CMakeFiles/qgifer.dir/all] Error 2
Makefile:136: recipe for target 'all' failed
make: ***     [all] Error 2
7
задан 20 December 2016 в 22:48

0 ответов

Другие вопросы по тегам:

Похожие вопросы: