Macに移行してすぐCocoaPodsを使ったらハマったお話
cocoapodsでライブラリを導入しようとPodfileを作成して「pod install」をした所、以下のようなエラーが出た。
$ pod install /Library/Ruby/Gems/2.0.0/gems/cocoapods-0.35.0/lib/cocoapods/user_interface/error_report.rb:13:in `report': incompatible character encodings: UTF-8 and ASCII-8BIT (Encoding::CompatibilityError) from /Library/Ruby/Gems/2.0.0/gems/cocoapods-0.35.0/lib/cocoapods/command.rb:58:in `report_error' from /Library/Ruby/Gems/2.0.0/gems/claide-0.7.0/lib/claide/command.rb:300:in `handle_exception' from /Library/Ruby/Gems/2.0.0/gems/claide-0.7.0/lib/claide/command.rb:274:in `rescue in run' from /Library/Ruby/Gems/2.0.0/gems/claide-0.7.0/lib/claide/command.rb:264:in `run' from /Library/Ruby/Gems/2.0.0/gems/cocoapods-0.35.0/lib/cocoapods/command.rb:45:in `run' from /Library/Ruby/Gems/2.0.0/gems/cocoapods-0.35.0/bin/pod:43:in `<top (required)>' from /usr/bin/pod:23:in `load' from /usr/bin/pod:23:in `<main>'
■結論
Podfileの中身の引用符が間違っていた。
Macのテキストエディットのスマート引用符で'が‘や’、"が“や”になっていた。
とりあえず、'を入力して‘とかに自動的に変わったら取り消すをして、スマート引用符で自動変換された所を元に戻して対処した。
■経緯
iOSでOpenCVを使うので、
・SwiftでOpenCVを使ってみた|画像処理だけで飯が食えるかっ!?
・Swift + OpenCVでリアルタイムに顔認識してみた1 - Give it a shot
とかを参考にProjectへの組み込みを進めてみるが、まず、軽く書いてある Podfile(単純なテキストファイル)の作り方が分からない。
Windowsだとエクスプローラーで右クリックメニューでファイル作ってかな。と思ったけど、ファインダーでテキストファイルの作り方が分からない。
しょうがないから、標準のテキストエディターっぽいテキストエディットを開いて、保存する。
これも当初メモ帳どこ?メモ帳どこ?状態だった。command+spaceでSpotlight検索にテキストってうって呼び出した。
Podfileを編集して保存しようとすると、今度は普通のテキスト形式での
保存がない。これは「メニュー→フォーマット→標準テキストにする」で、あらかじめ標準テキストにしておくだった。
保存する時「拡張子が未指定の場合は、“.txt”を使用」のチェックも外しておく。
やっと保存できて、ターミナルで「pod install」すると、上のエラーメッセージになって、エラーメッセージで検索しても意外と情報が無くてハマった。
最初英語なので、読んでなかったココに引用符の間違いが指摘されていたので、ひょっとして、これ見た目が変わってるだけじゃなくて別の文字コードになってる?と思ったら、テキストエディットに「スマート引用符の取り消し」とあり、ナンダコレ?となった。
スマート引用符での自動変換を取り消すようにして、Podfileを修正。
platform :ios, “8.1” pod ‘openCV’
↓
platform :ios, "8.1" pod 'openCV'
改めて、「pod install」。
$ pod install Analyzing dependencies CocoaPods 0.36.0.beta.1 is available. To update use: `gem install cocoapods --pre` [!] This is a test version we'd love you to try. For more information see http://blog.cocoapods.org and the CHANGELOG for this version http://git.io/BaH8pQ. Downloading dependencies Installing OpenCV (2.4.9.1) Generating Pods project Integrating client project [!] From now on use `Test150112.xcworkspace`.
となり、成功!