Как скомпилировать программу с использованием OpenCV 2.4.3 с Code::Blocks?
Я установил Code::Blocks с MinGW и OpenCV 2.4.3. Я хочу скомпилировать эту простую программу:
#include <opencv2/highgui/highgui.hpp>
#include <iostream>
using namespace cv;
using namespace std;
int main()
{
Mat im = imread("c:/path/to/lena.jpg");
if (im.empty()) {
cout << "Cannot open image!" << endl;
return 1;
}
imshow("Image", im);
waitKey(0);
}
Как правильно настроить CodeBlocks для компиляции кода выше?
Я установил OpenCV в c:\opencv
,
2 ответа
Чтобы использовать OpenCV с CodeBlocks, вам нужно указать CodeBlocks:
- Каталог, содержащий файлы заголовков OpenCV →
c:\opencv\build\include
- Список библиотек OpenCV, необходимых для компоновки →
c:\opencv\build\x86\mingw\libs\libopencv_*.dll.a
1. Добавьте каталог файлов заголовков OpenCV
Откройте Настройки → Компилятор и отладчик... → Вкладка " Поиск в каталогах " → Вкладка " Компилятор "
Нажмите кнопку " Добавить" для добавления новой записи. Во всплывающем диалоговом окне введите c:\opencv\build\include
,
и нажмите ОК.
2. Добавьте библиотеки OpenCV, необходимые для компоновки
Откройте Настройки → Компилятор и отладчик... → вкладка Настройки компоновщика.
Нажмите " Добавить" для добавления новых записей и откройте всплывающее диалоговое окно.
Нажмите кнопку "...", чтобы открыть диалог открытия файла. Идти к c:\opencv\build\x86\mingw\lib
каталог и выберите все файлы, нажав Ctrl-A.
Нажмите Открыть, чтобы добавить файлы,
Нажмите Ok, чтобы сохранить все настройки.
Теперь, когда вы установили каталог include и библиотеки для связывания, вы можете скомпилировать и запустить свой проект, нажав клавишу F9.
У меня были те же проблемы, в конце концов мне пришлось УСТАНОВИТЬ КОДЕБЛОКИ С MINGW, затем установить JUST MINGW (используя mingw-get отсюда http://sourceforge.net/projects/mingw/files/Installer/), после этого установить код блоки без MINGW (похоже, что версия mingw, связанная с кодовыми блоками, может иметь некоторые проблемы совместимости с предварительно скомпилированными файлами opencv).
Если после этого и после проверки вашего пути и конфигурации компилятора и компоновщика кодовых блоков ваша программа компилируется, но вылетает с ошибкой 000005, это означает, что у ваших предварительно скомпилированных файлов opencv есть какая-то неизвестная проблема (потому что некоторые маленькие эльфы перепутались с ними), поэтому, если эта ошибка возникает вам, вам нужно будет скомпилировать opencv самостоятельно, используя ответ NENAD BULATOVIC на этот вопрос. Начало работы с OpenCV 2.4 и MinGW в Windows 7 от @bsdnoobz