Окружение: ОС - Fedora 19 x86_64, Eclipse Platform Version: 4.3.1 Build id: 5fc19
Итак, для меня стало проблемой, как научить Eclipse понимать библиотеку OpenCV. Так что-бы работал IntelleSence.
Дело было так. С горем по полам я собирал проект, он компелировался но у меня постоянно были ошибки, типа [http://stackoverflow.com/questions/10803685/eclipse-cdt-symbol-cout-could-not-be-resolved]. Сразу оговорюсь, что не нужно делать сейчас то, что представлено в этой сслыке (попробуйте это, если вам не поможет мой метод).
Итак, к делу. Для начала рекомендую ознакомиться с [http://docs.opencv.org/doc/tutorials/introduction/linux_eclipse/linux_eclipse.html]. Но опять таки только для чтения. Это поможет вам ориентироваться в том, что я буду писать ниже.
Я предполагаю, что у читателя операционная система Линукс, и пути могут немного отличаться от тех, что буду давать я. Но опытный пользователь, я думаю, разберестя куда нужно бдует перйти.
Также я предполагаю, что у читателя уже установлены библиотеки OpenCV (лично я устанавливал через yumex).
Первое. Если вы еще не запустили Делаем новый проект: File -> New -> C++ Project.
Poject name: "firstopencv". Хотя вы можете выбрать другое. Но в рамках статьи рекомендую остановиться на этом.
Project type: Executable -> Empty Project;
Toolchain: Linux GCC. Жмем Finish.
Второе. На вкладке Project Explorer выбераем дирректорию firstopencv. Жмем правой кнопкой New -> Folder, называем ее "src".
На дирректории "src" правой нопкой мишы New -> Source File (C++);
File name: firstopencv.cpp
Третье. Ставим курсок на только что созданный файл. Идем Project -> Properties.
C\C++ Build -> Tools Settings -> GCC C++ Compiler
-> Command line pattern в конец строки добавляем следующу строку `pkg-config --cflags --libs opencv` . Обращаю ваше внимание на используемые ковычки. Они должны быить именно такими (находятся на русской букве Ё).
GCC C++ Linker Command line pattern добавляем следующу строку `pkg-config --cflags --libs opencv`
Четвертое. Учим Eclipse анализировать исходные коды. В том же Project Properties идем в Preprocessor Includes -> Providers. Убераем галку с CDT GCC Built-in Compiler Settings и устанавливаем на CDT GCC Built-in Compiler Settings MinGW.
Забыл сказать C\C++ Development Tools у вас уже должны быть установлены ;)
Жмем ОК.
Пятое. Проверка.
Для наглядности, я использовал этот текст программы
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/core/core.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2/opencv.hpp>
#include <iostream>
int main(int argc, char** argv)
{
cv::Mat image;
image = cv::imread(argv[1], 1);
if(argc != 2 || !image.data)
{
std::cout << "No image data \n";
return -1;
}
cv::namedWindow("Display Image", CV_WINDOW_AUTOSIZE);
cv::imshow("Display Image", image);
cv::waitKey(0);
return 0;
}
После компиляции, запустив приложение с путем к файлу с изображением в качестве первого параметра вы увидите изображение на экране.
Итак, для меня стало проблемой, как научить Eclipse понимать библиотеку OpenCV. Так что-бы работал IntelleSence.
Дело было так. С горем по полам я собирал проект, он компелировался но у меня постоянно были ошибки, типа [http://stackoverflow.com/questions/10803685/eclipse-cdt-symbol-cout-could-not-be-resolved]. Сразу оговорюсь, что не нужно делать сейчас то, что представлено в этой сслыке (попробуйте это, если вам не поможет мой метод).
Итак, к делу. Для начала рекомендую ознакомиться с [http://docs.opencv.org/doc/tutorials/introduction/linux_eclipse/linux_eclipse.html]. Но опять таки только для чтения. Это поможет вам ориентироваться в том, что я буду писать ниже.
Я предполагаю, что у читателя операционная система Линукс, и пути могут немного отличаться от тех, что буду давать я. Но опытный пользователь, я думаю, разберестя куда нужно бдует перйти.
Также я предполагаю, что у читателя уже установлены библиотеки OpenCV (лично я устанавливал через yumex).
Первое. Если вы еще не запустили Делаем новый проект: File -> New -> C++ Project.
Poject name: "firstopencv". Хотя вы можете выбрать другое. Но в рамках статьи рекомендую остановиться на этом.
Project type: Executable -> Empty Project;
Toolchain: Linux GCC. Жмем Finish.
Второе. На вкладке Project Explorer выбераем дирректорию firstopencv. Жмем правой кнопкой New -> Folder, называем ее "src".
На дирректории "src" правой нопкой мишы New -> Source File (C++);
File name: firstopencv.cpp
Третье. Ставим курсок на только что созданный файл. Идем Project -> Properties.
C\C++ Build -> Tools Settings -> GCC C++ Compiler
-> Command line pattern в конец строки добавляем следующу строку `pkg-config --cflags --libs opencv` . Обращаю ваше внимание на используемые ковычки. Они должны быить именно такими (находятся на русской букве Ё).
GCC C++ Linker Command line pattern добавляем следующу строку `pkg-config --cflags --libs opencv`
Четвертое. Учим Eclipse анализировать исходные коды. В том же Project Properties идем в Preprocessor Includes -> Providers. Убераем галку с CDT GCC Built-in Compiler Settings и устанавливаем на CDT GCC Built-in Compiler Settings MinGW.
Забыл сказать C\C++ Development Tools у вас уже должны быть установлены ;)
Жмем ОК.
Пятое. Проверка.
Для наглядности, я использовал этот текст программы
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/core/core.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2/opencv.hpp>
#include <iostream>
int main(int argc, char** argv)
{
cv::Mat image;
image = cv::imread(argv[1], 1);
if(argc != 2 || !image.data)
{
std::cout << "No image data \n";
return -1;
}
cv::namedWindow("Display Image", CV_WINDOW_AUTOSIZE);
cv::imshow("Display Image", image);
cv::waitKey(0);
return 0;
}
После компиляции, запустив приложение с путем к файлу с изображением в качестве первого параметра вы увидите изображение на экране.