2012-06-01 8 views
6

próbuję uruchomić program, który używa OpenCV i mam zdobyć go uruchomić na innych maszynach, i inne programy na moim biegu maszyny używając go, ale ten powraca:Program nie może uruchomić OpenCV choć inni mogą

programname.cpp: fatal error: opencv/cv.h: No such file or directory 

Ktoś wie, jak naprawić ścieżkę lub co może pójść nie tak? Używam Ubuntu 12.04 i OpenCV-2.4.0

+0

Które IDE używasz, czy ty kompilowania w terminalu? –

+0

Kompiluję się przy użyciu terminala – clifgray

Odpowiedz

5

Na moim Ubuntu 11.04, nagłówki są w: */usr/include/opencv-2.3.1/*, Zakładam, że powinno być dla ciebie */usr/include/opencv-2.4.0/*.

Masz dwa rozwiązania:

  • Po kompilacji, należy wybrać opcję -I: g++ -o [name] [src] -I/usr/include/opencv-2.4.0
  • Tworzenie dowiązania symboliczne do OpenCV-2.4.0/OpenCV i OpenCV-2.4.0/opencv2 w /usr/include.

Drugie rozwiązanie jest przydatne, jeśli używasz CMake, ponieważ FindOpenCV2 nie szuka OpenCV w /usr/include/opencv-2.4.0. Mam nadzieję, że ten (brzydki) hack rozwiąże Twój problem.

+0

, dzięki czemu wygląda na to, że program działa teraz, ale program miał zmodyfikować kolor obrazu i teraz jest już czarny. czy jest jakiś sposób, że mógł ominąć niektóre pliki lub uszkodzić niektóre? – clifgray

+0

ok. Właśnie to dostałem. dziękuję bardzo za pomoc. tworzenie linków symbolicznych rozwiązało to dla mnie – clifgray

6

Zmiana od:

#include <opencv/cv.h>

do:

#include <opencv2/opencv.hpp>

+0

Wydaje się działać, ale dlaczego –

+0

Mogę pracować przez #include sam

Powiązane problemy