2016-01-01 2 views
0

Я использую OpenCV с помощью python. Но есть ли у кого-то идея, как добавить библиотеку openCV в компилятор C++ (такие DevCpp или CodeBlocks ...).Установить OpenCV на компилятор C++

Если есть компилятор, на котором проще установить библиотеку OpenCV без проблем, у меня нет никаких ограничений для компилятора.

Я следил за некоторыми туто в сети, но они были не очень ясны.

Спасибо.

+0

Opencv построен с CMake, который позволяет легко скомпилировать его с помощью широкого спектра компиляторов и IDE. Если вы используете CMake с вашим приложением, добавление opencv также очень просто (3 или 4 строки текста в вашем CMakeLists.txt после создания opencv из исходного кода). Если вы этого не сделаете, вам нужно убедиться, что вы используете двоичные файлы, созданные для вашего компилятора (а в случае с Visual Studio не смешивайте Debug и Release и убедитесь, что вы не используете двоичные файлы из другой версии vc), а также вы придется вручную добавлять команды компоновщика (или зависимости) к вашему проекту или makefile. – drescherjm

ответ

2

В C++ есть две важные фазы компиляции. Во-первых, необходим каждый отдельный файл .cpp. Для этого вам нужны файлы заголовков библиотеки (.h). Во-вторых, отдельные части связаны друг с другом, и вам нужны сами файлы библиотеки. (.lib/.a в зависимости от платформы).

Итак, вам необходимо указать пути для обоих. Компилятор знает, какие точные заголовки нужны из инструкции #include, но библиотеки для ссылки должны быть явно указаны.

+0

hahaha Я вообще не думал об этом, хотя это естественный метод включения библиотек. – geniant

+0

Спасибо. MSalters, Самое важное замечание - добавить путь OpenCV к параметрам компилятора C++ (Dev-Cpp). Иначе это не сработает. В моем случае путь: «C: \ opencv \ build \ include». В этой папке есть папки «opencv» и «opencv2». Поэтому мне нужно включить «openCV.hpp», который находится в папке «opencv2». Вот небольшой код теста: #include #include "opencv2/opencv.hpp" INT основные() {Е ("рабочий");} – geniant

+0

ниже Ваша тестовая программа охватывает только отросток увязывания заголовков (подтверждает, что компилятор знает, где находятся файлы .hpp). Чтобы убедиться, что библиотеки OpenCV были связаны правильно, попробуйте протестировать одну из функций OpenCV, таких как cvLoadImafe(). Здесь все становится беспорядочным для большинства тех, кто пытается сконфигурировать компоновщик для использования OpenCV в первый раз. – Smallware

Смежные вопросы