4

Xcode 4でアーカイブすることはできましたが、突然(??)できません。ビルドは無効な.pchファイルで失敗します。エラーは以下に貼り付けられています(再試行から得られましたが、ビルドログから発生-Winvalid-pchしているように見えるのは、プリコンパイル済みヘッダーが実際にはプリコンパイルされていないことです-これはiOSアプリであり、CopyPNGステップからに直接進みます。 mコンパイルします。

誤って何かをひっくり返した可能性はありますか?.pbxprojファイルの差分には何も奇妙に思えません。

cc1obj: warning: /Users/myname/Library/Developer/Xcode/DerivedData/Foo-afikuaovoaeqhreaaaakpafseuuv/Build/PrecompiledHeaders/Foo_Prefix-guqixmujoiaaaacwjctfkrztxmbz/Foo_Prefix.pch.gch: created by a different GCC executable
cc1obj: error: /Users/myname/Library/Developer/Xcode/DerivedData/Foo-afikuaovoaeqhreaaaakpafseuuv/Build/PrecompiledHeaders/Foo_Prefix-guqixmujoiaaaacwjctfkrztxmbz/Foo_Prefix.pch: No such file or directory
cc1obj: error: one or more PCH files were found, but they were invalid

「プリコンパイルプレフィックスヘッダー」ビルド設定は、すべての構成で「はい」です。製品->クリーンは役に立ちません。派生データの下にキャッシュされたpchのものを削除しても、修正されません。本当に「プリコンパイル」ステップ全体が欠落しているようです。

別の事実:「プリコンパイル済みヘッダーの共有を増やす」設定を有効にすると、成功します。しかし、私はこのフラグが実際に何をするのかについてほとんど言及を見つけることができず、私はこれまでそれを使用したことがありません。そしておそらく合理的に、これが起こったときにプリコンパイルステップはまだ表示されません。

4

2 に答える 2

5

掃除してから再構築しましたか?製品メニュー==>クリーン。クリーニングは通常、そのような問題を解決し、そのファイルの以前のビルドがまだ有効であると見なすかどうかに関係なく、すべてをコンパイルするようにXcodeに効果的に指示します。

それが失敗した場合は、プロジェクトのDerivedDataフォルダーを消去してみてください。~/Library/Developer/Xcode/DerivedData/YourProjectNamexxxここxxxでuuidスタイルの文字列があります。

于 2011-05-06T02:47:46.917 に答える
0

承認された回答は正解です。一部の場合にのみ機能することに注意してください。

プロジェクトをワークスペースDerived Data Locationに変換し、デフォルトからに変更しましたWorkspace-relative。プリコンパイル済みヘッダーはすぐに機能しなくなり、古い場所をクリーンアップしても違いは見られませんでした。それは古い場所だったので、当然のことです!

ワークスペースの相対的な場所は、ワークスペースファイル(myProject.xcworkspace)が保存されたフォルダー内にあるようです。新しいサブフォルダーDerivedDataがあります。これには、ワークスペースによって名前が付けられたフォルダーが含まれ、使い慣れたものが含まれています。

インデックスフォルダには、(最終的に)いくつかのサブフォルダを含むPrecompiledHeadersが含まれています。それらをすべて削除し、強制的なプリコンパイルを再コンパイルします。

于 2013-01-22T13:25:01.193 に答える