2016-10-14 9 views
4

私はOpenCVをコンピュータにインストールしたばかりで、すべての機能が動作するようにすばやくテストしようとしています。私のコンピュータはLinux Deepin 15で動作します。よく知られた普及したディストリビューションではないので、問題を解決するのが少し難しくなります。とにかくOpenCVで共有オブジェクトファイル 'libopencv_shape.so.3.1'を開くことができません

は、ここで私が実行しようとしているコードです:

#include <iostream> 
#include <string> 
#include <sstream> 
using namespace std; 

#include "opencv2/core/core.hpp" 
#include "opencv2/highgui/highgui.hpp" 
using namespace cv; 

int main(int argc, const char** argv) { 
    Mat color = imread("lena.jpg"); 
    Mat gray = imread("lena.jpg", 0); 

    imwrite("lenaGray.jpg", gray); 
    return 0; 
} 

私はターミナルで次のコマンドを使用して、これをコンパイルします。

g++ main.cpp -o main `pkg-config opencv --cflags --libs` 

それはエラーなしで一見コンパイルされます。ファイルマネージャのアイコンは実行可能ファイルのアイコンではありませんが、「メイン」ファイルを作成します。

私はそれを実行しようとすると、私はこのエラーを取得:

./main: error while loading shared libraries: libopencv_shape.so.3.1: cannot open shared object file: No such file or directory 

は、私が何をすべきか全く見当がつかない。私は本当にopencvを稼働させる必要があります。私はインターネットを見て、 "libopencv_shape.so.3.1"ファイルを参照しているものは何も見つかりませんでした。

どうすればよいですか?

ありがとうございます!

export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/usr/local/lib 

それはあなたの問題を解決します:

+0

[私はここで学んだ](http://stackoverflow.com/questions/40048991/using-opencv-in-eclipse-getting-started )CVを開くと、すべてのlibsが1つのmegalibにバンドルされるようになりました。役に立つかもしれない。 – user4581301

答えて

4

次のコマンドを実行する必要があります。しかし、これはあなたの現在のbashインスタンスでのみ機能します。将来のインスタンスのためにこの行をbashrcファイル(~/.bashrc)にコピーする必要があります

関連する問題