web-dev-qa-db-ja.com

フレームワークはXcodeで「赤」です

私はApple=従業員(iPhoneアプリケーション開発についてスタンフォード大学でコースを教えた)によって開発されたプロジェクトをダウンロードしました。)奇妙なことに、フレームワークは赤です。

http://img.skitch.com/20100730-kcjun96mp2pxnpg7w3x6njw57.jpg

CoreGraphics.frameworkとUIKit.frameworkを見つけて再度追加しようとしましたが、どちらも見つかりませんでした。

Taimur

31
Taimur Ajmal

赤いテキストは、実際のファイルがプロジェクトがそれらのために持っているパスにないことを示します。

フレームワークに関する情報を取得し、Generalタブの下を確認します。最初のセクションには、フレームワークバンドル自体の名前とパスが表示されます。システム提供のフレームワークの問題の最も一般的な原因は、パスの種類がパスを壊すものに変更されたことです。デフォルト設定はRelative to Current SDK。実際のフレームワークにつながるパスを取得するまで、パスを変更します。

開発ツールをカスタムの場所にインストールしている場合、この問題が発生する可能性が高くなります。標準以外の設定で誰かからプロジェクトをコピーすると、同様に遭遇する可能性があります。

30
TechZen

シミュレータ用またはデバイス用に構築していますか?

デバイス用にビルドしてみてください。

15

これを自動的に修正する方法を見つけました:

  • メインのXcodeプロジェクトファイル(上部の青いファイル)を右クリックします。 alt text)、
  • 情報を取得、
  • 「一般」タブ、
  • 下部で、「すべての構成の基本SDK」を希望するものに設定します。

できた!

7
jchatard

私は以前この問題に直面していました。私は友人のMacから欠落している(赤で)フレームワークをコピーしてそれを乗り越え、Frameworkフォルダーにコピーしました。

これは私のフレームワークフォルダのパスです:

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk/System/Library/Frameworks

システムまたはSDKのバージョンによっては、パスを変更する必要がある場合があります。

2
Envil

おそらく、不要なフレームワークをいくつか削除することに決め、それらを削除したが、「参照の削除」の代わりに「ゴミ箱に移動」を選択した。

問題は、このフレームワークがプロジェクトのフォルダーに含まれていないことです。複数のプロジェクトで使用できる場合は、システムフォルダーにあります。つまり、現在のプロジェクトがコンパイルされないだけでなく、コンピューター上のすべてのプロジェクトもコンパイルされませんでした。

フレームワークが残っている場合は、フレームワークを右クリックして[Finderに表示]をオンにします。削除したフレームワークをゴミ箱で見つけ(まだワイプされていない場合)、システムのFrameworksフォルダーに戻すことができます。

このフォルダが見つからない場合、私はここにあります:/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk/System/Library

もちろん、Applicationsフォルダーに移動してXcodeを選択するときは、それを右クリックして[パッケージの内容を表示]をクリックする必要があります。

ごみ箱からでもフレームワークを削除した場合は、Xcodeを再インストールできると思います...

2
ancajic

@Taimur Hamza-理由のいずれかが原因で発生(赤い色)、

  1. ダウンロードしたプロジェクトで必要なファイルが欠落している可能性があります

  2. 最初にアプリケーションを実行する前。

    したがって、最初に上記の理由が発生していることを見つけて、別の実行中のプロジェクトからフレームワークをコピーして解決し、プロジェクトに貼り付ける必要があります。

2
Sivanathan