[Objective-C]OpenCVのインストールでハマったお話
こんにちは、プログラマのLFです。
いま調査中のアプリで画像加工をやりたいなーと思い、Google先生に訪ねてみると、
「OpenCVがいいですよ」というサイトをたくさん紹介してくださったので
試しにインストールしてみることにしました。
ここからが苦難の始まりだとは知る由もなく…。
この手の管理ツール大好きな人です。
まぁ上記のものはパッケージ管理ツールといったほうが正しいのかもしれませんが。
とにかく、自分でmakeすることなく、簡単にライブラリを導入したいわけです。
そんなわけでCocoaPodsを使い始めました。
CocoaPodsについては、下記のサイトが参考になるかと。
iOSライブラリ管理の神ツール「CocoaPods」のインストールと使い方 (1/2)
iOSライブラリ管理ツール「CocoaPods」の使用方法
OpenCVについて調べてみるとうれしいことにCocoaPodsに対応しているとのこと。
これは簡単にミッションクリアだなーと浮かれつつ、
以下のPodfileを作成して、インストール。
1 |
platform :ios, "7.0"<br />pod 'OpenCV' |
おお、できたできた。
インストールされたのは最新版の2.4.10か。
とりあえずビルドしてみるかと試したところ…。
ぎゃー!リンカエラーの雨霰!!!
なんで?なんで?
この時点で結構泣きそうでした。
シミュレータでも実機(iPhone6 8.1.1)でもダメ。
どうやらアーキテクチャが対応してないっぽい。
いろいろ検索してそれっぽい対策をしても結果は変わらず。
CocoaPodsのインストールがだめなのかなーと
本家サイトから最新版の2.4.10をダウンロードして
フレームワークだけインストールしても
結果は変わらず。
なんで?なんでなの?僕なんか悪いことした?
そんなとき下記のサイトを見つけました。
iOS OpenCV.frameworkは64bitビルドに対応していました
ん? 64bit対応?
たしかにiPhone6のアーキテクチャのarm64って64bit対応だよなー。
で、2.4.10はarm64に対応してないよってエラーが表示されている、と…。
え、つまり2.4.10が64bit対応してないってこと?
まさかー、そんなー、最新版でデグレってるのー?
そんなこと……………………
ありました!!!!!!
試しに2.4.9のフレームワークをダウンロードしてビルドしたら
あっさりビルドが通りました。
まじかー、まじかー、まじかー(以下脳内でリピート )
じゃあ、CocoaPodsでバージョン指定してインストールしたら
いけるんじゃない?と下記のPodfileを作成してインストール。
1 |
platform :ios, "7.0"<br />pod 'OpenCV', '2.4.9' |
はい、成功。
ビルドが通りました!
とりあえずいまのところ2.4.9を使うしかないのかなー。
ちなみにOpenCVでやりたかったことは、一瞬で調査が終わりましたとさ…。
切ない…。