コンピュータビジョン関連の研究でOpenCVを使おうって話になっていて,
実際に開発環境を導入しようと思ったら意外と苦戦してしまいました.

苦戦した理由は,自分の環境がOSX(10.6)だからっていうところが大きい.

OpenCVでの開発環境を整備するにあたって必要なライブラリがいくつかあります(下記)

  pkgconfig
libjpeg
giflib
libpng3
libtiff
gtk+2-dev
glib2-dev
atk1

これらを導入するにあたって,まさか一つ一つMakeするのは面倒くさい
パッケージ管理ツールを利用するのが一般的だろう.
Linuxだったらaptitudeやyumとか
Macだったらfinkがパッケージ管理ツールに当たるんだけど,finkは最初から入ってるわけではなく,
自分で用意しなくてはならない.
finkの公式サイトに行けばバイナリインストーラが用意されているのだけれど
10.6向けのバイナリはまだ用意されてなく,ソースからインストールしなくてはならない.
ココでfink導入の敷居が上がって感じる.
導入方法を示しているサイトを参考にFinkを入れるが,Makeする際に聞かれることが多過ぎる.
基本的にデフォルトでエンターしていけばそれでいいらしいんだけど,聞かれることが多すぎて不安(英語だし)

何はともあれ解説サイトに従って,何とかfinkを導入し終える.
後は,上記のリストのパッケージをそれぞれ導入する

fink install パッケージ名 :ソースからインストール
apt-get install パッケージ名 :バイナリでインストール


とりあえずソースインストールで上記のリストのライブラリを導入する.
これで事前準備は終了.

ようやくOpenCVの導入作業に入れる

ちなみにOpenCVは現時点でヴァージョンが2.1まで出てるみたいだが,
僕の私物のオーライリーの書籍は1.0で書かれている.
その為,最初は1.0の導入を試みたが,configureでは全く問題ないのに
Makeする際にコケてしまう.

エラー↓
dummy.cpp:1: error: CPU you selected does not support x86-64

調べてみたところ1.0はパッチファイルを当てれば導入することも可能だが,
その後も色々問題にブツカルことがあるらしい.
大人しく2.0以降を入れなさいってことらしい.

渋々,OpenCVの公式サイトから2.0のソースを落として来て,ビルドするとすんなり導入出来た.

以前教授に聞いたところによると,OpenCVはヴァージョンによる違いが大きいらしい(関数とか?)

その為,現行の1.0で書かれてる資料をそのまま使おうとするとトラブルにまたブツカルかもしれない.
それが現時点での心配ごとである.

ちなみに,簡単なjpegイメージを表示するだけのソースを書いてみたところ,ちゃんとビルド出来たし実行出来た.
とりあえず問題がないようだからこのままやってみよう