0

いくつかのUnitTestをCocoaLegacyコードの束に追加しようとしています。単体テストバンドルを作成し、必要なすべてのソースとフレームワークを追加しましたが、ビルドは次のメッセージで失敗します。

2010-08-26 16:07:18.074 otest-x86_64 [64675:903]のテストバンドル
/Users/giordano/application/build/Release/UnitTest.octest
Objective-Cのランタイム情報が一致しないため、ロードできませんでした
テストリグに必要なランタイム情報。これは、
テストリグはObjective-Cガベージコレクションを無効にして実行されていますが、
テストバンドルには、Objective-Cのガベージコレクションが必要です。Objective-Cを有効にするには
テストリグのガベージコレクションは、
OBJC_DISABLE_GC環境変数。

ガベージコレクターを有効にしようとしましたが、別のエラーが表示されます。

2010-08-26 16:38:28.824 otest-x86_64 [71383:903]のテストバンドル
/Users/giordano/work/CleanCode/Pomodori.st/desktop/Osx/pomodoro-
buildfix / pomodoro / build / Release/UnitTest.octestを読み込めませんでした
予期しないエラーが発生したため:Error Domain = NSCocoaErrorDomain
Code = 3587 UserInfo =0x20002a640"バンドル「UnitTest.octest」はできませんでした
破損しているか、必要なリソースが不足しているため、読み込まれました。」
 (dlopen_preflight(/Users/giordano/application/build/Release/UnitTest.octest/Contents/MacOS/UnitTest):ライブラリがロードされていません:
@ loader_path /../ Frameworks / Sparkle.framework / Versions / A / Sparkle
  参照元:
/Users/giordano/application/build/Release/UnitTest.octest/Contents/MacOS/UnitTest
  理由:適切な画像が見つかりません。見つけました:
    /Users/giordano/application/build/Release/UnitTest.octest/Contents/MacOS/../Frameworks/Sparkle.framework/Versions/A/Sparkle:
GC機能の不一致
    /Users/giordano/application/build/Release/UnitTest.octest/Contents/MacOS/../Frameworks/Sparkle.framework/Versions/A/Sparkle:
GC機能の不一致)

ガベージコレクションなしでユニットテストを強制的に実行することは可能かどうか疑問に思います:何か手がかりはありますか?

4

1 に答える 1

1

Sparkleフレームワークは、GCを有効に構築する必要があります。

于 2010-08-26T15:57:36.520 に答える