web-dev-qa-db-ja.com

Xcodeに追加されたフレームワークのヘッダーを含める

glewcgなどのフレームワークを使用したいので、手動で追加しました

プロジェクトを右クリックして、プロジェクトに必要なフレームワークを追加->ファイルを追加...

正しいフレームワークを選択します。問題は、ヘッダーファイルをインクルードしようとすると、

Xcodeはそれらのどれも見つけることができません。この写真が理解に役立つことを願っています:

enter image description here

そして:

enter image description here

指定されたエラーはglewフレームワーク用ですが、Cgでも発生します。

左側にあるように、必要なフレームワークが追加されました。

これらのヘッダーをどのように含めることができますか?

ヘッダーファイルを手動で追加しようとした後、アーキテクチャエラーが発生しました。

enter image description here

これがどのように見えるかはわかりません。ありがとう!

35
Itzik984

開始する前に、フレームワークと、機能させるために追加したすべてのファイルを削除します。

次に、ターゲットのBuild Phasesにフレームワークを追加する必要があります。次にLink Binary With Librariesに進み、そこからフレームワークを選択します。

これでうまくいくはずです。ヘッダーは各#import directive.の後にオートコンプリートとして利用できるはずです。それが機能しない場合(時々起こる)、私が提供できる追加のステップがあります。

追加手順:

ビルド設定でプロジェクト設定に移動します。

  • フレームワークのパスでFramework Search Pathsを完成させます
  • User Header Search Pathでも同じことを行います

その後、動作するはずです。そうでない場合は、#importディレクティブにヘッダーの完全なパスを追加する必要があります。例:

#import "/path/to/my/header.h"


Appleのドキュメント こちらから入手可能 状態:

  1. プロジェクトナビゲータで、プロジェクトを選択します
  2. ターゲットを選択してください
  3. [ビルドフェーズ]タブを選択します
  4. 「ライブラリとバイナリをリンク」エキスパンダーを開く
  5. 「+」ボタンをクリックします
  6. フレームワークを選択してください
  7. (オプション)追加したフレームワークを「Frameworks」グループにドラッグアンドドロップします
58
Jean

私の場合、ターゲットにFramework Search Pathsを追加しましたが、Projectに追加する必要があります

enter image description here

また、Always Search Users Pathyesでなければなりません

6
CAMOBAP

フレームワークの追加後にオートコンプリートが失敗する場合

Build Phasesに移動し、Link Binary with Librariesオプションを使用して、フレームワークを追加していました。 XCode 6.1では、プロジェクトは正常にビルドされましたが、XCodeのオートコンプリートは機能しませんでした。

それで、やらなければならないことは:

  1. 既に追加されているフレームワークをProject Navigatorから削除し、Link Binary with Librariesからも削除します。
  2. XCodeのFile-> Add Files toオプションでフレームワークをプロジェクトに追加します。

そして、オートコンプリートが機能し始めます。

4
Kiran

私の場合、外部フレームワークはWindowsでダウンロードされ、プロジェクトに追加されていました。その後、OSXに転送され、そこでXcodeプロジェクトがビルドされ、外部フレームワークが適切にロードされませんでした。これは、Windowsがフレームワークフォルダーを通常のフォルダーに変更したためで、OSXが問題を抱えているためだと思います。

私にとっての解決策は、OSXでフレームワークをダウンロードし、XCodeプロジェクトのフレームワークフォルダーにドラッグすることでした。

2
Egil Sandfeld

私の場合、フレームワークのバージョンを更新する必要があったため、ファイルシステムの.frameworkを置き換えただけで、質問で言及したエラーが発生しました。

フレームワークを削除して再度追加し、検索パスや他のすべての提案を試しても役に立たなかった。

最終的に、ビルドフォルダーをクリーニングすることで問題が解決しました。

xcodeメニューから[製品]を選択し、オプションキーを押しながら[ビルドフォルダーのクリーン]をクリックします。

その後、プロジェクトを正常に構築して実行しました。

1
ofirbt