web-dev-qa-db-ja.com

ビルドエラー:Xcode 10へのアップグレード後にFBSDKShareKit.hファイルが見つかりません

私はFBSDK(react-native-fbsdk)を使用する反応ネイティブを使用してアプリを構築しています。すべてが問題なく機能しましたが、Xcodeを9.4から10.0に更新した後、エラーのためプロジェクトをビルドできなくなりました。

「FBSDKShareKit/FBSDKShareKit.h」ファイルが見つかりません

私は同じ問題を抱えていると思われるいくつかの質問を見つけ、それらの提案を試みましたが、それでも正常にビルドできません。私が試したこと:

  1. フレームワーク検索パスに「〜/ Documents/FacebookSDK」を追加
  2. FBSDK [Core、Share、Login] Kit.frameworkおよびlibRCTFBSDK.aがライブラリとのリンクバイナリにあることを確認してください
  3. 「rm -rf〜/ Library/Developer/Xcode/DerivedData」を使用してデータを消去してから、再度ビルドしようとしました
  4. FacebookSDKフォルダーからフレームワークを削除してから、再度追加しました

この時点で、他に何を試してみるべきかわかりません。最も奇妙なことは、Xcodeを更新する前に動作していたということです。つまり、Xcode自体に変更があったためにこれが発生したのでしょうか。

誰もこれについて考えているか、この問題に直面していますか?

編集:ビルドシステムを新しいビルドシステムからレガシービルドシステムに変更することで、プロジェクトを正常にビルドできました。アプリが実行されます(現在のfbsdkと互換性のないXcodeのプロジェクトのビルド方法に変更が加えられている可能性があります)。

8
rabbit87

ビルドシステムを新しいビルドシステムに設定しながら、プロジェクトをビルドすることができました。

$(PROJECT_DIR)/../../../ ios

rCTFBSDKの(ターゲット)フレームワーク検索パスに。

私の推測はそうです。 .frameworksファイルはios/Frameworksではなくiosフォルダーにあるため、プロジェクトは必要なファイルを見つけることができません。 (Legacy Build Systemを使用した場合になぜ機能するのかはまだ謎です)。

エミュレータとデバイスの両方でテストしました。どちらも正常に動作しているようです。

10
rabbit87

私のために働いたもの:

IosフォルダーにFrameworksフォルダーを作成し、すべてのfdsdkファイルを移動しました。

次に、FBSDK [Core、Share、Login] Kit.frameworkとlibRCTFBSDK.aを「Link Binary with Libraries」から削除し(プロジェクトでアクセスしてからフェーズをビルド)、3つのFBSDK [Core、Share、Login]を追加する必要がありました。 Frameworksフォルダー+ libRCTFBSDK.aからのKit.framework

DerivedDataフォルダーをクリーンアップしました

rm -rf ~/Library/Developer/Xcode/DerivedData

その後、新しいビルドシステムでビルドが成功しました。

これが他の人に役立つことを願っています。

@ rabbit87と@kalidに感謝します

4
Pierre

まだこの問題に苦しんでいる人にとって、私のために働いたのは、メインプロジェクトからフレームワーク検索パスを変更するだけでなく、ライブラリにあるRCTFBSDK.xcodeproj自体の中からパスを変更する必要があることでしたフォルダ。 - enter image description here

0
conchimnon