このドキュメントを通じてiOSプロジェクトにfacebookSDK.frameworkを追加するだけです: iOS用Facebook SDKの開始方法
Xcodeプロジェクトをビルドして、実行することに成功しました。しかし、ソースコードをコピーして別のPCで実行すると、「レキシカルまたはプリプロセッサの問題「FacebookSDK/FacebookSDK.h」ファイルが見つかりません」というエラーが発生します
また、プロジェクトのリソースにfacebookSDK.frameworkを追加し、再試行しましたが、解決しませんでした。
それで、このプロジェクトを別の場所で実行する方法を教えてください。
私は非常に似た問題を抱えていますが、私の場合はFacebook SDKではなくAmazon Web Services SDKを使用しています。私にとって、問題はフレームワークのロードパスに関連していることが判明しました。
ソリューション: Xcodeの「ビルド設定」に移動し、「検索パス」の下に「フレームワーク検索パス」アイテムがあります。それをダブルクリックして、新しい検索パスを追加します:.
そして再帰的にします。きれいにしてビルドします。
これは、フレームワークがプロジェクトディレクトリ内のどこかに保存されていることを前提としています。そうでない場合は、必要に応じて新しい検索パスを変更します。
私はこの問題を抱えており、これを行うことで修正しました:
私の場合、私はあなたに似たようなことをしました(1つは異なります)。手順は次のとおりです。
FacebookSDKディレクトリに移動し、FacebookSDK.frameworkを選択し、右クリックして[情報を取得]を押し、ファイルパスをコピーします(/ Users/macbook/Documents/FacebookSDKなど)。
Xcodeの[ビルド設定]に移動し、[検索パス]の下に[フレームワークの検索パス]項目があります。ダブルクリックして、コピーしたファイルパスを貼り付けます。
この設定は「プロジェクト」と「ターゲット」の両方に存在するため、両方の場所に貼り付けてください。
プロジェクトをきれいにしてビルドします。今回は動作するはずです。
字句またはプリプロセッサの問題-ファイルが見つかりませんというエラーに対する私の解決策は次のとおりです。
Xcode => Project Target => Build Settings => Search Pathsに移動します
次に、このパスで独自のプロジェクト名を使用して、フレームワーク検索パスとライブラリ検索パスの両方に次のパスを挿入します。「$ {SRCROOT} // project name/facebookSDK/framework」
私の場合、問題はMillenialMedia SDKにありました。
字句またはプリプロセッサの問題「MillennialMedia/MMSDK.h」ファイルが見つかりません
プロジェクトからSDKフレームワークを削除し、フレームワークをProjectの最上位フォルダー(保存されている.xcodeprojファイル)に移動することで解決しました。そして、ビルドフェーズでプロジェクトにフレームワークを追加します。
公式WebサイトからSDKアーカイブを再ダウンロードする必要がある場合があります(破損しているか、またはそのような場合)。私の場合、オフィスのコンピューターからプロジェクトをリモートリポジトリーにプッシュし、自宅のコンピューターからプルした後に発生しました。
フレームワークの削除
framevorksを内部フォルダーから最上位のProjectフォルダー(.xcodeprojファイルが保存されている同じフォルダー)に移動
プロジェクトへのフレームワークの追加
Facebook SDKからDeprecatedHeaders
フォルダー(_FacebookSDK/Versions/Current
_にある)を_FacebookSDK.framework
_の隣のFrameworks
フォルダーにドラッグすることで、このエラーメッセージを解決しました。
すべての方法の検索パス(上記の_.
_を含む)を追加しても役に立たなかったし、Mr_bemからの回答も役に立たなかった-_.m
_ファイルは「コンパイルソース」に既に存在
これはOPの質問に直接役立つことはないかもしれませんが、うまくいけば私のような他の人に役立つかもしれません。
同じ問題があります。たぶん、ソースコードをチェックアウトするためにtortoiseSVN(windows)を使用したでしょう。
これは私の問題です:
Mac =>ソースを送信=>ウィンドウ=>チェックアウトソース=>ウィンドウからMacにソースをコピー=>コンパイル=>エラー。
解決策:svn for Macを使用してソースをチェックアウトします。
私は同じ問題を抱えていて、私の場合、このエラーの理由を見つけるには、「facebookSDK.framework」は、「フレームワーク検索パス」にあります。
プロジェクト内のすべての「フレームワーク検索パス」をチェックし、Xcodeがそれらのパスで1つの「facebookSDK.framework」のみを検出できることを確認できます。
この問題が発生したとき、プロジェクトが正常に戻ったことがわかりましたが、実行しようとするとエラーが発生しました。 facebook.hファイルをコメントアウトすると、プレフィックスファイル内の次のファイルに切り替えられただけで、エラーが発生します。
ビルド設定と検索パスの変更を開始する準備はできていましたが、すべてのXcodeプロジェクトを閉じて、最初に再起動することにしました。
これを書くことは、試してみるのはあまりにも明白なことのように思えますが、エラーが表示されるとすぐに、私はstackoverflowに入り、上記の提案された答えを試してみました。私の状況はまれでユニークかもしれませんが、間違いなく10秒しかかからず、私のために働いたので、最初にすべてを再起動して閉じてみてください。
Framework Search PathsおよびHeader Search Pathsの値は、最初はここで他の人が言及したものと同じでした。
ライブラリをXcodeにドラッグして手動でリンクすることを確認しました。 FB SDKのライブラリもすでに存在していました。
問題は、ダウンロードしたSDKのフォルダー名にありました
名前をFacebookSDKに変更し、アプリを起動して実行しました
IOSのfacebookプラグインにこのコマンドラインを使用している場合
cordova -d plugin add /path/to/cloned/phonegap-facebook-plugin --variable APP_ID="123456789" --variable APP_NAME="myApplication"
また、フレームワークにFacebookSDK.frameworkが表示されますが、拡張することはできません。戻ってcordova plugin remove phonegap-facebook-plugin
を使用してからgit clone https://github.com/Wizcorp/phonegap-facebook-plugin.git
を使用し、facebookプラグインを再度追加します。
わかりました、答えが得られたと思います。以下の手順に従ってください。
Build Phases->Link binary with Libraries
"Add Other"
をクリックしてカスタムフレームワークを追加しますBuild Settings->Search Paths->Framework Search Path
に移動し、次の2つのことを確認します。(a)$(継承)
(b)$(PROJECT_DIR)/ project_name/Resources/Frameworks。
フレームワークが「Frameworks」フォルダー内に存在することを思い出さない
それがうまくいくことを願っています。フォルダー名にスペースを入れないでください。それらを保持している場合は、正しいエスケープ文字を指定してください。
私の場合、それはXcodeであり、F *** ing stuffの素敵な機能です:)
ソリューション: Xcodeの「ビルド設定」に移動し、「検索パス」の下に「フレームワーク検索パス」アイテムがあります。引用符の前にスラッシュがないことを確認してください。スラッシュは通常、Xcodeの「ファイルを追加...」でフレームワークを追加するときに追加されます。引用符の前にスラッシュが表示されている場合は、削除してください。例:
\"
あるべき
"
それはそれを行う必要があります。
そうでない場合は、プロジェクトをクリーンアップして(command + shift + k)、フレームワークを再度追加します(Y)。
さらに質問がある場合は、Dに質問してください。