Install OpenCV in CentOS6.5


CentOSOpenCV入れましたー。メモ。

[ビルドに必要なファイルのインストール]
rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
yum install cmake28

CentOS(6.5)の場合、標準のリポジトリではいるcmakeのバージョンが古いためビルド時にエラーがでます。。
(CMake Error at /(略)/opencv-2.4.8/cmake/cl2cpp.cmake:50 (string): string does not recognize sub-command MD5)
そのためepelリポジトリのcmake28をインストールします。

[OpenCVのソース取得(2.4.8)]
wget http://sourceforge.net/projects/opencvlibrary/files/opencv-unix/2.4.8/opencv-2.4.8.zip/download
unzip opencv-2.4.8.zip
cd opencv-2.4.8

[ビルドしてインストール]
cmake28 .
make
make install

足りないファイルがあったらyum installでインストールしてください。

[ライブラリを利用する]
gcc a.cpp -lopencv_core -lopencv_highgui -lopencv_imgproc

[実行する]
libが/usr/local/libにあるためエラー出る。
error while loading shared libraries: libopencv_core.so.2.4: cannot open shared object file: No such file or directory

*一時的にライブラリを有効化
export LD_LIBRARY_PATH= $LD_LIBRARY_PATH: /usr/local/lib

*継続して利用したい場合
vi /etc/ld.so.conf.d/usr_local_lib.conf
/usr/local/lib
ldconfig

実行時にlibraryが見つからないエラーが出る場合は、
ldd <実行ファイル> でnot foundとなっているライブラリを
find / -name <ライブラリ名> で探してやればいい。
ない場合は、yumダウンロードの必要がある。