2

Xcode 4.2、iOS 5.0 プロジェクトで ARC が有効になっています。プロジェクトに ARC 以外の Reachabilty クラスを追加すると、次のエラーが発生しました。

Undefined symbols for architecture i386:
  "_SCNetworkReachabilitySetCallback", referenced from:
      -[Reachability startNotifier] in Reachability.o
  "_SCNetworkReachabilityScheduleWithRunLoop", referenced from:
      -[Reachability startNotifier] in Reachability.o
  "_SCNetworkReachabilityUnscheduleFromRunLoop", referenced from:
      -[Reachability stopNotifier] in Reachability.o
  "_SCNetworkReachabilityCreateWithName", referenced from:
      +[Reachability reachabilityWithHostName:] in Reachability.o
  "_SCNetworkReachabilityCreateWithAddress", referenced from:
      +[Reachability reachabilityWithAddress:] in Reachability.o
  "_SCNetworkReachabilityGetFlags", referenced from:
      -[Reachability connectionRequired] in Reachability.o
      -[Reachability currentReachabilityStatus] in Reachability.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
4

2 に答える 2

1

追加したライブラリは、デバイス用にのみ構築されており、シミュレータ用には構築されていないようです(そのため、「アーキテクチャi386では見つかりません」と表示されます)。

コードを見つけてプロジェクトに直接追加すると、デバイスとシミュレーターの両方をビルドできるようになります。

于 2012-04-07T05:46:06.507 に答える
1

プロジェクトにフレームワーク SystemConfiguration.framework を追加しましたか??

于 2012-04-07T09:24:53.803 に答える