2013-06-25 1 views
1

를 구축하는 동안 ... 및오류이 아마 멍청한 놈 질문하지만 난 잠시 동안 갇혀있다 그리고 내가 어떤 도움을 주셔서 감사합니다 OpenCV의에게 2.4.5 이클립스 응용 프로그램과 우분투 13.04

나는이 [링크]에서 OpenCV의 튜토리얼에 의해 주어진 지침 http://docs.opencv.org/doc/tutorials/introduction/linux_eclipse/linux_eclipse.html

을 따랐다 ... 내가 쉽게 내 프로젝트 관리하기 위해 Eclipse를 사용하고자하지만 아무 문제없이 터미널을 사용하여 샘플 응용 프로그램을 실행 나는 모든 것을 따라 갔고 여전히 다음과 같은 오류가 발생합니다.

/usr/bin/ld: cannot find -llibopencv_calib3d 
/usr/bin/ld: cannot find -llibopencv_contrib 
/usr/bin/ld: cannot find -llibopencv_core 
/usr/bin/ld: cannot find -llibopencv_features2d 
/usr/bin/ld: cannot find -llibopencv_flann 
/usr/bin/ld: cannot find -llibopencv_gpu 
/usr/bin/ld: cannot find -llibopencv_highgui 
/usr/bin/ld: cannot find -llibopencv_imgproc 
/usr/bin/ld: cannot find -llibopencv_legacy 
/usr/bin/ld: cannot find -llibopencv_ml 
/usr/bin/ld: cannot find -llibopencv_nonfree 
/usr/bin/ld: cannot find -llibopencv_objdetect 
/usr/bin/ld: cannot find -llibopencv_photo 
/usr/bin/ld: cannot find -llibopencv_stitching 
/usr/bin/ld: cannot find -llibopencv_superres 
/usr/bin/ld: cannot find -llibopencv_ts 
/usr/bin/ld: cannot find -llibopencv_video 
/usr/bin/ld: cannot find -llibopencv_videostab 
collect2: error: ld returned 1 exit status 
make: *** [Test_OpenCV01] Error 1 

유일한 차이점은 내 단계 사이에서 찾을 수 있었다 튜토리얼은 다음과 같습니다 내가 명령을 실행하면이 때문에 내 출력

/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_superres.so /usr/local/lib/libopencv_ts.so /usr/local/lib/libopencv_video.so /usr/local/lib/libopencv_videostab.so 

입니다

pkg-config --libs opencv 

을 라이브러리 이름은 약간 다르므로 내가 가진 이름을 사용합니다. 일식에서를 automaticly 실행 된

명령 줄은 명확 라이브러리 경로가 공유 라이브러리가 말하는 오류에 그러나에있는 곳이다/usr/지방/lib 디렉토리 /임을 지정

g++ -L/usr/local/lib/ -o "Test_OpenCV01" ./src/main.o -llibopencv_calib3d -llibopencv_contrib -llibopencv_core -llibopencv_features2d -llibopencv_flann -llibopencv_gpu -llibopencv_highgui -llibopencv_imgproc -llibopencv_legacy -llibopencv_ml -llibopencv_nonfree -llibopencv_objdetect -llibopencv_photo -llibopencv_stitching -llibopencv_superres -llibopencv_ts -llibopencv_video -llibopencv_videostab 

입니다/usr/bin/ld에있는 lib 파일을 찾을 수 없음.

ps

sudo는 gedit를

/etc/ld.so.conf.d/opencv.conf 다음과 같은 추가 : 나는 공유 라이브러리를 사용하여 모두

1) 구성을 OpenCV를 시도했다 파일 끝에있는 라인

/usr/local/lib 저장 후 sudo ldconfig를 실행하십시오.

2) 명령을 실행

수출 LD_LIBRARY_PATH =/usr/local/lib 등의 나는 또한

을 추가

PKG_CONFIG_PATH = $ PKG_CONFIG_PATH :/usr/지방/lib/pkgconfig 내보내기 PKG_CONFIG_PATH

/etc/bash.bashrc 파일의 끝.

도움을 주셔서 감사합니다.

답변

1

연결 단계에서 라이브러리를 잘못 지정하고 있습니다.도서관이 libfoo.so 인 경우 -lfoo라고해야합니다.

당신은 옵션 here 연결에 대한 자세한 내용을보실 수 있습니다

g++ -L/usr/local/lib/ -o "Test_OpenCV01" ./src/main.o -lopencv_calib3d -lopencv_contrib -lopencv_core -lopencv_features2d -lopencv_flann -lopencv_gpu -lopencv_highgui -lopencv_imgproc -lopencv_legacy -lopencv_ml -lopencv_nonfree -lopencv_objdetect -lopencv_photo -lopencv_stitching -lopencv_superres -lopencv_ts -lopencv_video -lopencv_videostab 

g++ -L/usr/local/lib/ -o "Test_OpenCV01" ./src/main.o -llibopencv_calib3d -llibopencv_contrib -llibopencv_core -llibopencv_features2d -llibopencv_flann -llibopencv_gpu -llibopencv_highgui -llibopencv_imgproc -llibopencv_legacy -llibopencv_ml -llibopencv_nonfree -llibopencv_objdetect -llibopencv_photo -llibopencv_stitching -llibopencv_superres -llibopencv_ts -llibopencv_video -llibopencv_videostab 

를 교체합니다.

0

파일 이름이/usr/local/lib 폴더 아래의 liblibopencv_core.so와 비슷하지만 GCC C++ 링커 라이브러리에서는 opencv_core을 언급합니다. 라이브러리에 추가 할 다른 파일에 대해서도 동일한 작업을 수행하십시오.

관련 문제