はじめに
Xcode 7.3, CocoaPods0.39の環境で開発していたプロジェクトについて、Xcode 8, CocoaPods1.1.0.rc.3という環境でpod updateを実行しました。
発生したエラーと解決方法について、シェアします。
Specifying multiple post_install
hooks
まず出たのがこのエラーです。
[!] Invalid `Podfile` file: [!] Specifying multiple `post_install` hooks is unsupported..
Podfileのなかに複数のpost_install do | installer |があったので、1つのpost_install do | installer |にまとめて解決しました。
The dependency ***
is not used in any concrete target.
The dependency `SwiftyPickerPopover` is not used in any concrete target.
こちらの記事によりますと、CocoaPods 1.0.0以降では、ターゲットを指定する仕様になったようです。
target ‘ge-calc’ do
pod 'SwiftyPickerPopover'
end
のような形にすることで解決できます。
No such file or directory @ rb_file_s_stat - Pods/Target Support Files/Pods/Pods-acknowledgements.plist
No such file or directory @ rb_file_s_stat - Pods/Target Support Files/Pods/Pods-acknowledgements.plist
Setting.bundleの中のAcknowledgements(謝辞)項目への追記作業を自動化をPodfileに書いていたのですが、ここでパスの不整合が起きていました。記述の第二のエラーの解決のために指定したターゲット名がパス名に入るようになったからです。
パス名を次のように書き換えます。
例えば、パス名が"ge-calc"だった場合、
/Pods-ge-calc/Pods-ge-calc-acknowledgements.plist
のように指定することで解決できます。
関連リンク
ライセンス表記の自動作成
http://qiita.com/mox2/items/545f1d39e4829907ac42
冒頭文つきで、CocoaPods経由のOSSのライセンス表記を自動化する
http://qiita.com/hsylife/items/5f1e7bdd7de0fd60532f