openCV使いたい…openCV使いたくない?

f:id:panchiga:20140717031812p:plain

はじめに

以前opencv使いたいなーって思ってOpenCV2プログラミングブックという書籍を参考にやってて途中で飽きて放置していました。
 
その本ではmacportsを使っているのですが、当時と違い私はhomebrewを使うようになってしまいました。
その為競合が発生するとのことで、もうmacportsが使えない体になってしまいました。
 
するとOpenCV2プログラミングブック通りには進められないので一工夫必要でした。なのでその苦労を書きます。
 
HomebrewでopenCVというのを紹介してるブログはいっぱい有るのでそのへんは適当にぐぐりましょう。
 
$brew install opencv
 
ここでは躓かなかったとします。
 

早速使う

早速サンプルプログラムを動かしてみようとしたところ、無理やでwって言われた。
brew installしたらパスは勝手に通ってるのではと思っていたので、
 
$g++ test.cpp
 
とかやってたので 
#include <opencv2/opencv.hpp>
         ^
1 error generated.
とかいうエラーくらってなんでだろうなあとか思ってました。
 
つまりincludeするファイルはどこにあるのかを教えてあげないといけないのです。
 
g++のオプション

今回使うオプション

-L :ライブラリファイルのディレクトリを指定する。
-I :インクルードファイルのディレクトリを指定する。
 

解決した 

g++ test.cpp -I /usr/local/Cellar/opencv/2.4.9/include/opencv2 -I/usr/local/include -L/usr/local/lib -lopencv_highgui -lopencv_core

 
死ぬほど長いですね。
でもお陰で無事にコンパイルできて実行ファイルが出力されました!やったね!
 

まとめ 

g++力があまりにも足りませんでした。あとググり力も足りませんでしたね。
さて次は-L /usr/local/libに何がいるのかを知る必要がありますね。
 

感想

なんというか、知らないことが多すぎるなあって感じでした。
何かを使う時、何が書かれてるか考えないでコピペするのはとても駄目ですね。せめて意味を理解してから使おうって思いました。
openCV使えると面白いことがいっぱいできそうなのでいっぱい使っていこうと思います。