1

ターゲットが 6.1 に設定されている場合、単体テストは正常に実行されます。また、シミュレーターで機能を試してみると、コード自体に問題はありません。

問題は、単体テストでは 6.1 SDK が存在することを期待しているが、実際には 5.1 SDK を使用していることだと思います。

エラーは次のとおりです。

dyld: Symbol not found: _objc_setProperty_nonatomic_copy
  Referenced from: /Users/{my username}/Library/Developer/Xcode/DerivedData/{my app name}/Build/Products/Debug-Live-iphonesimulator/AgrianUnitTest.octest/AgrianUnitTest
  Expected in: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.1.sdk/System/Library/Frameworks/Foundation.framework/Foundation

最初に考えたのは、ユニット テスト ターゲットのベース SDK を変更することでしたが、最新と 6.1 以外のオプションはありません (手動で 5.1 を入力すると、「SDK が見つかりません」という結果になります)。

4

1 に答える 1

0

以前にアップグレードした後、Xcode の場所が最新ではない可能性があります。位置を固定してみてください。ターミナルでこれを実行します。

sudo /usr/bin/xcode-select -switch /Applications/Xcode.app/Contents/Developer/
export DEVELOPER_DIR=/Applications/Xcode.app
于 2013-02-13T19:06:58.787 に答える