2009-03-18 9 views
1

すべてiphoneで外部の.hファイルのメソッドを呼び出す方法

私のiPhoneゲームでは、外部の.hと.aファイルを追加したいと思います。私はXcodeで与えられたadd projectオプションを使ってそれらを追加しています。それは追加されますが、私はヘッダファイルで与えられたメソッドを呼び出すと思います。私たちに与えられた命令に従って、外部ヘッダファイルで宣言された1つのメソッドを呼び出さなければなりません。このメソッドをAppDelegateのapplicationDidFinishLaunchingメソッドの中で呼び出さなければなりません。しかし、コンパイル時には、以下から参照されるエラーが1つあります。シンボルが見つかりません。私はこのメソッドを呼び出す方法とメソッドの参照方法を理解していません。

私はリンクを1つ送信しています。私のアプリケーションと同じ問題が起こっています。

http://forums.macrumors.com/showthread.php?t=443437

その3つのスクリーンショットは、私の方法で同じエラーがまた来ている2009年1月24日、午前7時37 AM 上のいくつかのtoddburchによって与えられなくObjective-Cのと私のコードは、ココアにあるされてルビーで。

誰かが解決策を知っている場合は、できるだけ早く返信してください。

答えて

1

.hで十分ではありません。また、ソースコードまたはコンパイルされたフレームワークのいずれかの実装が必要です。

+0

私は1つの.aファイルと2つの.hファイルを持っていますが、私はそこでメソッドを呼び出す方法を理解していません。なぜなら私は実装ファイルを持っていないからです。 – Jyotsna

+0

.aファイルはアーカイブです。メソッドに実行可能なコードが含まれています。私はあなたのプロジェクトにそれを統合する方法はわかりませんが、フレームワークのグループに追加することは問題ありません。 – mouviciel

+0

私はフレームワークにのみ.aファイルを追加しましたが、.hにあるメソッドはまだ参照を取得していません。ご指導ありがとうございます。 – Jyotsna

0

あなたはソースコード自体にアクセスできますか? .hと.m/.cファイルをフレームワークディレクトリからプロジェクトに直接ドラッグしてみてください。ちょっと面倒ですが、あなたが得ているエラーメッセージに基づいて問題を解決すると思います。グループ内にそれらをすべて配置することができますので、プロジェクトを好きなだけドラッグした後に混雑して見えることはありません。

0

あなたが現在お使いのサードパーティのライブラリ内の2つのファイル

  • 利用可能なクラスや関数を記述* .Hヘッダファイル
  • A※プリコンパイルされたコードを保持している.A静的ライブラリファイルを持っています* .hファイルで記述された関数の場合

#includeまたは#import "xyz.h"を実行してアプリケーションをコンパイルする段階に入っていると仮定すると、実行可能ファイルは* .aファイルにリンクされています。

シンボルが見つかりませんというエラーメッセージは、コードの一部が特定の関数を呼び出していることを認識していますが、現在その関数の実装を提供する別のコードモジュールを見つけることができません。

あなたの* .aファイルが、プロジェクト内でリンカーに渡されるように正しく構成されているかどうかを確認してください。これを行う1つの方法は、メインのXCodeウィンドウの "Targets"セクションを展開することです。アプリケーションを表すセクションにドリルダウンすると、「ライブラリでバイナリをリンクする」というラベルの付いたサブノードが表示されます。あなたの* .aファイルをリストアップする必要があります。追加する方法の1つでない場合は、ファイルをこのセクションにドラッグアンドドロップするだけです。

関連する問題