0

クラス Foobar を持つ objc アプリがあり、起動時にそのアプリにロードされ、いくつかのメソッドでクラス Foobar を拡張する dylib を作成したいと考えています。

残念ながら、ライブラリをビルドできません。次のリンカ エラーが発生します。

  "_OBJC_CLASS_$_Foobar", referenced from:


      __objc_const@0 in Foobar+MyStuff.o


      __objc_classrefs__DATA@0 in Foobar+MyStuff.o


ld: symbol(s) not found


collect2: ld returned 1 exit status

その不足しているシンボルを無視するように ld に指示するリンカー フラグはありますか?

どうもありがとう!

4

1 に答える 1

0

次の引数をターゲットの「その他のリンカー フラグ」セクションに追加すると、不足しているシンボルが無視され、実行しようとしていることが実行できるようになります。

-force_flat_namespace -undefined suppress

PS: これは Mac 用です。これがiPhoneにどのように適用されるか、またはどのように適用されるかはわかりません。

于 2009-12-09T15:25:02.447 に答える