1) 前準備 #1
Cygwinのsetup.exeで必要なパッケージをインストールしておく.
通常は,以下のものと,それらが依存するライブラリなどが必要でしょう.
"unzip" "cmake" "gcc-g++" "make" "patch" "libIlmImf-devel" "libjasper-devel" "libjpeg-devel" "libpng-devel" "libtiff-devel" "libbz2-devel" "zlib-devel"
2) 前準備 #2 (推奨)
ffmpegをビルドする.
for example:
$ cd /tmp/ $ tar xvjf ffmpeg-2.8.tar.bz2 $ cd ffmpeg-2.8/ $ ./configure --disable-yasm --disable-iconv --enable-avresample $ make -j 4
3) 前準備 #3 (OpenCVのviz moduleが不要ならばスキップして良い)
VTKをビルドする.具体的な手順はこちらの手順を参照.
作業ディレクトリ(例:/tmp/vtk_build/)をそのまま使えるので,VTKの"インストール"は必須ではない.
その場合,VTKは"静的ライブラリ(static library)"としてビルドすることが推奨.
4) パッチ適用
opencv-2.4.12.2.tar.gzを入手し,私のCygwin用パッチを適用する.
for example:
$ cd /tmp/ $ tar xvzf opencv-2.4.12.2.tar.gz $ gunzip opencv-2.4.12.2-cygwin-patch-20150921.txt.gz $ cd opencv-2.4.12.2/ $ patch -p1 < ../opencv-2.4.12.2-cygwin-patch-20150921.txt
5) ビルド,インストール
for example:
$ mkdir build_shared_release/ $ cd build_shared_release/ $ cmake -Wno-dev \ -D CMAKE_LEGACY_CYGWIN_WIN32=0 \ -D CMAKE_BUILD_TYPE=RELEASE \ -D BUILD_SHARED_LIBS:BOOL=TRUE \ -D WITH_IPP:BOOL=FALSE \ -D WITH_OPENMP:BOOL=TRUE \ -D WITH_OPENGL:BOOL=TRUE \ -D ENABLE_FAST_MATH:BOOL=TRUE \ -D ENABLE_SSE:BOOL=TRUE \ -D ENABLE_SSE2:BOOL=TRUE \ -D ENABLE_AVX:BOOL=TRUE \ -D ENABLE_AVX2:BOOL=TRUE \ -D BUILD_TESTS:BOOL=FALSE \ -D BUILD_PERF_TESTS:BOOL=FALSE \ -D BUILD_EXAMPLES:BOOL=FALSE \ -D CYGWIN_FFMPEG_BUILT_DIR=/tmp/ffmpeg-2.8/ \ -D WITH_VTK:BOOL=TRUE \ -D VTK_DIR=/tmp/vtk_static_release/ \ -D CMAKE_INSTALL_PREFIX=/usr/local/opencv-2.4.12.2/ \ /tmp/opencv-2.4.12.2/ $ make -j 4 install