久しぶりに Cocoa Pods
で、インストールしているライブラリを更新し Xcode12.0.1
でビルドしたところ下記のような見慣れないエラーに遭遇しました。
Double-quoted include “pb.h” in framework header, expected angle-bracketed instead
色々ググって見ると下記のような Issue を Cocoa Pods
のレポで発見しました。
どうやら、Xcode12 から CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER
のデフォルトオプションが Yes
に変更され、それに起因して Cocoa Pods
で生成される umbrella header
でエラーが発生しているようです。CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER
オプションについて詳しく知りたい方は下記を参照してみてください。
解決法
既に Cocoa Pods
で対応がされていて、1.10
以降のバージョンで正常に umbrella header
が生成されるようなので、Cocoa Pods
を更新して pod install
したら解決しました👷♀️
余談
umbrella header
は Umbrella Framework
のヘッダーファイルで、Umbrella Framework
は複数の Frameworks
を一つにまとめた Framework
のことを言います。Mac OS X
に含まれている CoreServices.framework
なんかがこれにあたり、Frameworks
ディレクトリに複数の Framework
が内包されているのが分かります。
ちなみに、エウレカ
さんの記事に Umbrella Framework
を実践的に作成した内容が書かれていてかなり勉強になります👀
という感じで本日も以上になります👋