LionでOpenCVをコマンドラインからコンパイル

Pocket
LINEで送る

前にOSX LionにMacPortsからインストールしたOpenCVをXCodeでコンパイル方法を書いたけど、コマンドラインからコンパイル方法を書いてなかったので書いておきます。

gcc -wall -g -o opencv_test main.c `pkg-config –cflags opencv` `pkg-config –libs opencv`

pkg-configについて

ヘッダファイルやライブラリをリンクするのに、ファイルパス指定をやってくれるのがpkg-configです。
pkg-config –cflags opencv:OpenCVのヘッダファイル指定
pkg-config –libs opencv:OpenCVのライブラリ指定

これはコマンド扱いなのでターミナルで叩くとファイルパスが見れます。
僕の環境だとこんな感じ。
・ヘッダファイルパス

pkg-config –cflags opencv -I /opt/local/include/opencv -I /opt/local/include

・ライブラリファイルパス

pkg-config –libs opencv -L/opt/local/lib -lopencv_core -lopencv_imgproc -lopencv_highgui -lopencv_ml -lopencv_video -lopencv_features2d -lopencv_calib3d -lopencv_objdetect -lopencv_contrib -lopencv_legacy -lopencv_flann

 
なので、次のように各オプションを指定すれば、pkg-configを使用した場合と同値になる。長いけど。。

gcc -wall -g -o opencv_test main.c -I/opt/local/include/opencv -I/opt/local/include -L/opt/local/lib -lopencv_core -lopencv_imgproc -lopencv_highgui -lopencv_ml -lopencv_video -lopencv_features2d -lopencv_calib3d -lopencv_objdetect -lopencv_contrib -lopencv_legacy -lopencv_flann

(補足)コンパイルオプション
 -o:実行ファイル名を指定
 -g:実行ファイルにデバッグ用の情報を埋め込む
 -Wall:warningをすべて表示
 -I:コンパイラがヘッダファイルを探すディレクトリを指定
 -L:コンパイラがライブラリを探すディレクトリを指定

ちなみにコンパイルコマンドは、/opt/local/share/OpenCV/samples/c配下に「build_all.sh」なるmakeファイルがあるのでそれを見ればわかるよ。

白黒と輪郭抽出のサンプルを置いたので試しに使ってください。

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください