How to build OpenCV 3.0.0 on CentOS 7 (64bit) using Intel Compiler (icc, icpc)

以前の記事 2014-01-13 - kamekamekame877の日記 の続編。ICCOpenCV使う人いないのかな。例によって長い行は \ で改行してます。
OpenCViccで使うパッケージのインストール。

# yum install tcsh bash-completion wget libpng-devel libjpeg-turbo-devel jasper-devel netpbm-progs \
 OpenEXR-devel libtiff-devel libwebp-devel gnuplot gcc-c++ ImageMagick boost cmake make giflib-utils \
 yum-cron vim bind-utils libstdc++.i686 glibc.i686 libgcc.i686

ビルド。

$ mkdir build; cd build/
$ cmake -DCMAKE_CXX_COMPILER=/opt/intel/composerxe/bin/icpc \
          -DCMAKE_C_COMPILER=/opt/intel/composerxe/bin/icc -DWITH_TBB=YES -DWITH_OPENMP=ON ../
$ make -j12
# make install
# cp -p unix-install/opencv.pc /usr/share/pkgconfig/
# echo /usr/local/lib > /etc/ld.so.conf.d/opencv.conf
# ldconfig

デフォルトで -DCMAKE_BUILD_TYPE=RELEASE -DCMAKE_INSTALL_PREFIX=/usr/local は有効。ENABLE_SSE41、ENABLE_AVXなどはLinux版では無効。makeのオプションjにマシンのコア数(スレッド数、この例では12スレッド)で並列ビルド。外部ライブラリがインストール済みなら、3分程度でビルドが終わる。

アンインストール方法は、ビルドしたディレクトリで以下を実行。

# make uninstall
# rm /usr/share/pkgconfig/opencv.pc

なお、環境変数 PKG_CONFIG_PATHを全員のログインスクリプトに追加するもよし。

参考:document/OpenCV - 2 インストール CentOS sift - weiki (作業ログやそのまとめ)