2

私のアプリは、iOS 5.0 を実行している iPhone シミュレーターでは正常にコンパイルされますが、iOS 4.2.1 を実行している古い物理 iPod touch では失敗します。

次のエラーが表示されます。

Undefined symbols for architecture armv6:
  "_OBJC_CLASS_$_TestFlight", referenced from:
      objc-class-ref in AppDelegate.o
ld: symbol(s) not found for architecture armv6

これに関する他の質問を見てきました: アーキテクチャ armv6 の未定義シンボル、iOS 4.3 への更新

しかし、それらは解決策ではありません。確かに、TestFlight.h はコンパイル ソースにはありませんでしたが、コンパイル ソースにドラッグしてもエラー メッセージは変わりませんでした。(TestFlight.m はありません。「Link Binary with Libraries」に libTestFlight.a があります。

同様に、#import "TestFlight.h"AppDelegate.m を削除して再入力しても何も変わりませんでした。

iPod でこのコンパイル エラーを引き起こしている原因は他にあるでしょうか?

4

2 に答える 2

1

まず、.h ファイルはソース ファイルではないため、もう一度 [ソースのコンパイル] から削除します。

エラーについて - おそらく armv6 をサポートしていない TestFlight SDK のバージョンを使用しています - 彼らは最近のバージョンでこのアーキテクチャを再度有効にしました。SDK の最新バージョンに更新し、それが役立つかどうかを確認します。

于 2012-11-29T08:12:46.063 に答える
0

プロジェクトをクリックし、を選択します

目標

そしてgoto

ビルドフェーズ

ソースをコンパイルする

AppDelegate.mを追加しました。接続されていない可能性があり、コンパイラはファイルを見つけることができません。リンクも参照してください

于 2012-11-29T12:05:06.497 に答える