これは表示されているという警告です。
オプション '-F / Applications / Xcode-beta.app / Contents / Developer / Platforms / iPhoneOS.platform / Developer / SDKs / iPhoneOS9.0.sdk / Developer / Library / Frameworks'のディレクトリが見つかりません
誰でも警告を解決できますか?
これは表示されているという警告です。
オプション '-F / Applications / Xcode-beta.app / Contents / Developer / Platforms / iPhoneOS.platform / Developer / SDKs / iPhoneOS9.0.sdk / Developer / Library / Frameworks'のディレクトリが見つかりません
誰でも警告を解決できますか?
回答:
XcodeプロジェクトのXcode 6.4からXcode 7への移行に加えて、以下の(コンパイル後の)テストターゲットの警告メッセージが表示されます。
directory not found for option '-F/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator9.0.sdk/Developer/Library/Frameworks'
新しいプロジェクトと古いプロジェクトを比較すると実際に何かが見つかりました...
古いプロジェクトでは、警告は私のプロジェクトのテストターゲットによってのみ生成されていました。下に「検索パス」、私はそれが下に2つの項目を含むがわかった「フレームワーク検索パス」:
$(SDKROOT)/Developer/Library/Frameworks
$(inherited)
新しいプロジェクトでは、「フレームワーク検索パス」は空のままでした。
古いプロジェクトでそれらのエントリを削除すると、警告が削除されました。
ノート:
設定を完全に比較していないため、さらに違いがある可能性があります。
また、ある日、次の2つの警告メッセージのいずれかに再遭遇した場合に備えて、それを行う必要があることを覚えておいてください。警告'-L/...'
がライブラリ検索パスのオプションである場合は、そこにあるものを削除してください。ただし、警告が'-F/...'
フレームワーク検索パスのオプションに関するものである場合は、そこにあるものを削除してください。
エラーメッセージに基づいて、ビジネスの最初の注文はターゲットのパスをまっすぐにすることだと思われます。このStackOverflow質問への回答に示されているように、パスを編集できます。エラーが発生している原因がわからない場合は、すべてのターゲットのパスを確認してください。プロジェクトをXcode 7ベータ版にアップグレードした後、少し時間がかかりました。FRAMEWORK_SEARCH_PATHSに、削除する必要があるテストターゲットのパスがありました。そこにあったパスは、警告を受け取ったと報告したパスとまったく同じでした。パスを削除すると、パスが削除されました。
King-Wizardは基本的に正しいですが、もう少し詳しく説明します-
Xcode 7はXCtest.framework
、存在しないパスでテストフレームワークを探しています。$(SDKROOT)/Developer/Library/Frameworks
「検索パス->フレームワーク検索パス」で設定されたパス/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.0.sdk/Developer/Library/Frameworks
は、有効なパスではないフレームワークを探しています。この行$(SDKROOT)/Developer/Library/Frameworks
を削除してエラーを削除しても、テストを実行できます。
「XCTest.framework」への正しいパスは/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/Frameworks
、好奇心が強い人のためのものです。
お役に立てば幸いです。
Xcode 9.2でも同じエラーが発生しました。手動で行わない場合の解決策を次に示します。
次のエラーが発生した場合:
オプション '-L /…のディレクトリが見つかりません
つまり、これはライブラリエラーであるため、以下の手順を試すことができます。