これは初心者の質問かもしれませんが、しばらく立ち往生していて、助けていただければ幸いです...
opencv をインストールし、ターミナルを使用してサンプル アプリケーションを問題なく実行できましたが、プロジェクトを簡単に管理するために Eclipse を使用したい...
この [リンク] http://docs.opencv.org/doc/tutorials/introduction/linux_eclipse/linux_eclipse.htmlの opencv チュートリアルの指示に従いました。
私はすべてに従いましたが、それでも次のエラーが発生します
/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
私の手順とチュートリアルの間で見つけられた唯一の違いは、次のとおりです。コマンドを実行すると:
pkg-config --libs opencv
これは私の出力です
/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
ライブラリ名が少し違うので、私が持っている名前を使用します。
Eclipseから自動的に実行されたコマンドラインは
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/local/lib/ であることを明確に指定していますが、エラーでは /usr/bin/ld に lib ファイルが見つからないことが示されています
ps私は両方を試しました
1) 共有ライブラリを使用するための OpenCV の構成:
sudo gedit /etc/ld.so.conf.d/opencv.conf
ファイルの最後に次の行を追加します
/usr/local/lib 保存後の実行中の sudo ldconfig。
2) コマンドを実行する
export LD_LIBRARY_PATH=/usr/local/lib
私も追加しました
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig export PKG_CONFIG_PATH
/etc/bash.bashrc ファイルの末尾まで。
高度なご協力ありがとうございます。