mam zainstalowane biblioteki OpenCV, ale nadal jestem uzyskiwanie błąd
$ g ++ -I/usr/include/OpenCV/-L -lcxcore -lhighgui hello.cpp - o cześć
/tmp/ccjjrbXr.o: W funkcji main': hello.cpp:(.text+0x2d): undefined reference to
cvLoadImage”
collect2: ld powrócił stan 1 wyjściabłąd OpenCV: niezdefiniowane odniesienia do `cvLoadImage” Ubuntu
Kiedy sprawdzić ścieżkę bibliotek dostaję
$ pkg-config - libs opencv
-lml -lcv aux -lhighgui -lcv -lcxcore
Napisałem bardzo prosty program, aby go przetestować:
enter code here
#include< cv.h>
#include< highgui.h> /* required to use OpenCV's highgui */
#include< stdio.h>
int main() {
IplImage* img = 0;
printf("Hello\n");
img = cvLoadImage("lena.jpg", 0);
}
Jest coś złego w mojej instalacji, ale nie jestem naprawdę w stanie zrozumieć. Wszelkie wskazówki będą wysoko cenione! Dzięki
Kiedy biegnę:
$ pkg-config --cflags --libs opencv
-I/usr/local/include/opencv -I/usr/local/include
/usr/local/lib/libopencv_calib3d.so /usr/local/lib/libopencv_contrib.so
/usr/local/lib/libopencv_core.so /usr/local/lib/libopencv_features2d.so
/usr/local/lib/libopencv_flann.so /usr/local/lib/libopencv_gpu.so
/usr/local/lib/libopencv_highgui.so /usr/local/lib/libopencv_imgproc.so
/usr/local/lib/libopencv_legacy.so /usr/local/lib/libopencv_ml.so
/usr/local/lib/libopencv_nonfree.so /usr/local/lib/libopencv_objdetect.so
/usr/local/lib/libopencv_photo.so /usr/local/lib/libopencv_stitching.so
/usr/local/lib/libopencv_ts.so /usr/local/lib/libopencv_video.so
/usr/local/lib/libopencv_videostab.so
Ale kiedy biegnę:
$ g++ 'pkg-config --cflags --libs opencv' display_image.cpp
g++: error: pkg-config --cflags --libs opencv: No such file or directory
OpenCV wydaje się być zainstalowany, ale nadal problem występuje nadal.
Niestety, tak naprawdę wszedł połączone wszystkie bibliotekami, ale popełnił błąd podczas wprowadzania go do forum. Nadal daje ten sam błąd: '** g ++ -I/usr/include/opencv/-L -lhighgui hello.cpp -o hello /tmp/ccw90mKu.o: W funkcji 'main': hello.cpp :(. text + 0x2d): niezdefiniowane odwołanie do 'cvLoadImage ' collect2: ld zwrócił 1 status wyjścia' ** – user1111044
@ user1111044 - wtedy prawdopodobnie nie może znaleźć biblioteki. Czy nie musisz określać katalogu, jeśli używasz "-L"?może to blokować standardowe wyszukiwanie LD_LIBRARY_PATH –
Tak, to jest dokładnie ten problem, z którym mam do czynienia. Nie mam folderu do użycia razem z -L. – user1111044