web-dev-qa-db-ja.com

不正な形式または破損ASTファイル

なぜ最初にそれが起こったのかわからない問題がありますが、それはおそらく、誤っていくつかのシステムフレームワークへの移動を押したためです。

次のエラーが表示されました:

不正な形式または破損AST file:「ファイルが見つかりませんでした」/Users/username/myProject/QuartzCore.framework/Headers/CAMediaTiming.h」で参照されるASTファイル'

そのディレクトリにQuartzCore.frameworkをコピーしようとしました。それは私に新しいエラーのパンチを与えます。その後、Dirからフレームワークを削除した場合。コードを変更するまで、すべてがプロジェクトに適しています。次に、前のシナリオをもう一度作成する必要があります。今では非常に迷惑であり、私は本当にこれを修正する必要があります。誰でも?

41

要求どおり:

(新しいXcodeを取得した後)このエラーの原因は、シミュレータでプロジェクトを実行しようとしたことです(シミュレータで誤って、シミュレータを使用することはありません)が、デバイスを選択することを忘れたり、気付くと、シミュレータで実行しようとします...そのため、これらの古典的な「.o」ファイルエラーが表示されます...その後、デバイスに切り替えて破損しますASTファイル...


問題を解決するには...(以下の手順に従ってください[〜#〜] very [〜#〜] !!!!)

  1. プロジェクトをきれいにする
  2. QUIT Xcode(CMD + Q)
  3. このターミナルコマンドを実行します。
    rm -rf ~/Library/Developer/Xcode/DerivedData/ModuleCache/*
  4. このターミナルコマンドを実行します。
    rm -rf ~/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/*
  5. Xcodeを再度開く
  6. シミュレーターではなくデバイスを選択したことを確認してください
  7. CLEANプロジェクト(はい、もう一度
  8. THEN build(お使いのデバイスに、シミュレータにではなく)...

楽しい!

注:さらに実験を重ねた結果、xCodeの強制終了はおそらく必要ないことがわかりました。

95
Albert Renshaw

他のすべての「ビルドをクリーンアップする」答えに加えて、(非常に文書化されていない!)/var/foldersディレクトリを空にするまで、何も機能しませんでした。

どうやら、これはOS-Xによって維持される「その他のキャッシュ」ディレクトリです。 「正しいファイル」とは何なのかわからない。ディレクトリ全体を削除しました。

...そして今、私は再び構築することができます。やった!ターミナルから:

[Sudo] rm -rf /var/folders/*

(私はFinderから認証を介してそれを行いましたが。)(OS-X 10.9.latest)

追加の手がかり:XCode-6-betaでビルドできましたが、XCode-5で間抜けな「破損AST file」エラーが発生しました。

9
Olie

私の状況では、[製品]> [クリーン]をクリックして、プロジェクトを再度ビルドするだけで済みました。成功しました。これが、同じ状況に陥った他の人たちの助けになることを願っています。

6
Jordan H

こんにちは、私は一度に2つのプロジェクトを開き、フレームワークを1つのプロジェクトから別のプロジェクトにドラッグアンドドロップしたため、同じエラーが発生しました。しばらくして、これは正しい方法ではないことに気付きました。別のプロジェクトからドラッグされたすべてのフレームワークをゴミ箱に移動しました。その後、きれいにしてシミュレータで実行すると、すべてが正常に機能しています。

フレームワークの削除->フレームワークの追加->クリーンして実行

私はそれが誰かを助けることを願っています

個人的には、たった1つのソリューションが役に立ちました。Xcodeで[ウィンドウに移動]-> [オーガナイザー] [派生データ]ディレクトリの近くにある[削除]ボタンをクリックします。その後、プロジェクトを再度実行します...

4
Daniel C.

私はちょうど私のプロジェクトをきれいにして、再構築します。すべてが正常に戻ります。

0
teapeng

私の場合、破損した.mファイルがあったためにエラーが発生していました-それは何らかの形で(どうやってかわからない)プロジェクトに入ってきたファイルでした(同時にEclipseを開いて、破損したファイルがsome Javaのコード)。問題を解決するために、プロジェクトをクリーンアップし、Xcodeを閉じ、エラーのある.mファイルを削除し、Xcodeを再度開きました。今は行方不明の.mファイルです。同じ名前の新しい空の.mファイルを作成し、プロジェクトは正常に実行されました。

0
JanB