[iOS] アプリ名を変更したところなぜかビルドが通らなくなり苦労した話

[iOS] アプリ名にiPadと入れるとRejectされる に書いたとおり、アプリ名に iPad が入っていたためアプリがRejectされたため、アプリ名を変更する必要が出てきた。

Submitまでしてしまっていたので、iTunes Connect のアプリ情報ページから修正した。
また、アプリ側は InfoPlist.strings の CFBundleDisplayName でHome画面上の名前をローカライズしていたので、その部分を修正。
さらに、一応 info.plist の Bundle display name も修正。

しかしどの作業中に問題が起きたか分からないのだが、いつのまにかビルドすると Apple LLVM Compiler 3.1 Error で失敗するようになってしまった。
ビルドができなくなるような変更を入れた覚えはないので、思い当たることがなく夜中にかなり苦労したのだが解決することができなかった。
おそらく、起きている問題はこれと同じ。しかし残念ながら回答がなかった。
iphone – Apple Error LLVM 3.1 – Stack Overflow

で、うんうんうなりながら寝たのだが翌日起きてふと正常なプロジェクトの設定と比較してみると、
Build Settings の Apple LLVM compiler 3.1 – Language の Prefix Header の設定が、なぜかファイル名ではなくディレクトリ名に変更されていた。
(この画像の Ad Hoc が問題が起きている状態。DebugとReleaseは手動修正された文字列になっている)
MetronomeTest xcodeproj 1
ここを、xxx-Prefix.pch に手動で変更したところ、ビルドできるようになった。
しかしなぜこの部分が変更されてしまったのかは不明。

もともとこのプロジェクトはiPhone 用で、それを流用して iPad 用プロジェクトとして使っていたのだが、そのやり方が何か影響していたのかも知れない。
何か分かったらまた書くということで。

返信を残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

This site uses Akismet to reduce spam. Learn how your comment data is processed.