![見出し画像](https://assets.st-note.com/production/uploads/images/40114618/rectangle_large_type_2_098e8c6bca30956244b5df4379efe820.png?width=1200)
Xcode 10 : warnings
はじめに
Xcodeをupdateして、oFのProjectを作成すると、まっさらな状態でbuildしてもwarningが出た。気持ち悪いので対応を調査
環境
* OS : 10.14.6 (Mojave)
* Xcode : 10.3
* oF : 0.10.0
古いヘッダーマップはサポートされなくなる
warning: Traditional headermap style is no longer supported; please migrate to using separate headermaps and set ‘ALWAYS_SEARCH_USER_PATHS’ to NO.
こちら、Xcode 10のリリースノートによると、
「ALWAYS_SEARCH_USER_PATHS」をオンにしたときに生成されるヘッダーマップは新しいビルドシステムでは対応しなくなったため、
「ALWAYS_SEARCH_USER_PATHS」オプションは「NO」に変更する必要がある、と言うことのようです。
また、ヘッダーファイルの構文は以下の様に使い分けろと書かれていました。
// プロジェクト中のヘッダーファイル
#include "header-name.h"
// システムヘッダーファイル
#include <system-header-name.h>
この使い分け自体は昔からそうだったはずですが、上記のオプションによってどちらで書いても良いような動作をXcodeはしていました。
warning: Skipping duplicate build file in Compile Sources build phase:
File > Project Settings > Build System > Legacy Build System.
で消える。
参考
* Xcode 10対応 : 古いヘッダーマップはサポートされなくなる
* 'Multiple commands produce' error when building with new Xcode build system #20492
もしよろしければ、サポートをお願いします! 頂いたサポートは、Creatorとしての活動費に充てさせて頂きます。