Как скомпилировать программу с помощью OpenCV 2.4.3 с помощью 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:

  1. каталог, содержащий заголовочные файлы OpenCV → c:\opencv\build\include
  2. список библиотек OpenCV, необходимых для связывания → c:\opencv\build\x86\mingw\libs\libopencv_*.dll.a

1. Добавьте каталог файлов заголовков OpenCV

открыть настройкикомпилятор и отладчик...каталоги поиска → компилятор tab

CodeBlock settings: search directory

клик добавить кнопка для добавления новой записи. Во всплывающем диалоговом окне введите c:\opencv\build\include,

Add OpenCV include directory to CodeBlocks

и нажмите кнопку Ok.


2. Добавьте библиотеки OpenCV, необходимые для связывания

открыть настройкикомпилятор и отладчик... → настройки линкера табуляция.

CodeBlocks linker settings

клик добавить для добавления новых записей и открыть всплывающее окно.

CodeBlock settings: Add libraries to link

выберите "..." кнопка для открытия диалога открытия файла. Перейти к c:\opencv\build\x86\mingw\lib каталог и выберите все файлы, нажав Ctrl-A.

enter image description here

клик открыть добавить файлы

enter image description here

клик Ok сохранить все настройки.


теперь, когда вы установили каталог include и библиотеки для связывания, вы можете скомпилировать и запустите проект, нажав клавишу F9.


У меня были те же проблемы, в конце концов мне пришлось удалить CODEBLOCKS с MINGW, а затем установить просто MINGW (используя mingw-get отсюда http://sourceforge.net/projects/mingw/files/Installer/), после этого установите блоки кода без MINGW (похоже, что версия mingw, связанная с codeblocks, может иметь некоторые проблемы совместимости с предварительно скомпилированными файлами opencv).

Если после этого и рассмотрения вашего пути и компилятора codeblocks и конфигурации компоновщика, ваш программа компилируется, но падает с ошибкой 000005, это означает, что ваши предварительно скомпилированные файлы opencv имеют какую-то неизвестную проблему (потому что некоторые маленькие эльфы связались с ними), поэтому, если эта ошибка произойдет с вами, вам нужно будет скомпилировать opencv самостоятельно, используя ответ Ненада Булатовича на этот вопрос начало работы с OpenCV 2.4 и MinGW в Windows 7 by @bsdnoobz