将XCode从4.2升级到4.3后我遇到了以下问题。我无法建立它。 你们有没有想法如何解决这个问题?甚至一些线索对我也有帮助。
ld: warning: ignoring file /Applications/Xcode.app/Contents/Developer/Library/Frameworks/SenTestingKit.framework/SenTestingKit, missing required architecture armv7 in file
Undefined symbols for architecture armv7:
"_STComposeString", referenced from:
-[NSMutableURLRequest_ParametersTest verifyDefaultParametersForRequest:] in NSMutableURLRequest+ParametersTest.o
-[NSMutableURLRequest_ParametersTest verifyModifiedParametersForRequest:] in NSMutableURLRequest+ParametersTest.o
-[NSMutableURLRequest_ParametersTest verifyEmptyParametersForRequest:] in NSMutableURLRequest+ParametersTest.o
-[NSString_URLEncodingTest testURLEncodedString] in NSString+URLEncodingTest.o
-[NSURL_BaseTest testURLStringWithoutQuery] in NSURL+BaseTest.o
-[OAHMAC_SHA1SignatureProviderTest testSignClearText] in OAHMAC_SHA1SignatureProviderTest.o
-[OAMutableURLRequestTest testGenerateNonce] in OAMutableURLRequestTest.o
...
"_OBJC_CLASS_$_SenTestCase", referenced from:
_OBJC_CLASS_$_NSMutableURLRequest_ParametersTest in NSMutableURLRequest+ParametersTest.o
_OBJC_CLASS_$_NSString_URLEncodingTest in NSString+URLEncodingTest.o
_OBJC_CLASS_$_NSURL_BaseTest in NSURL+BaseTest.o
_OBJC_CLASS_$_OAHMAC_SHA1SignatureProviderTest in OAHMAC_SHA1SignatureProviderTest.o
_OBJC_CLASS_$_OAMutableURLRequestTest in OAMutableURLRequestTest.o
_OBJC_CLASS_$_OAPlaintextSignatureProviderTest in OAPlaintextSignatureProviderTest.o
_OBJC_CLASS_$_OARequestParameterTest in OARequestParameterTest.o
...
"_OBJC_METACLASS_$_SenTestCase", referenced from:
_OBJC_METACLASS_$_NSMutableURLRequest_ParametersTest in NSMutableURLRequest+ParametersTest.o
_OBJC_METACLASS_$_NSString_URLEncodingTest in NSString+URLEncodingTest.o
_OBJC_METACLASS_$_NSURL_BaseTest in NSURL+BaseTest.o
_OBJC_METACLASS_$_OAHMAC_SHA1SignatureProviderTest in OAHMAC_SHA1SignatureProviderTest.o
_OBJC_METACLASS_$_OAMutableURLRequestTest in OAMutableURLRequestTest.o
_OBJC_METACLASS_$_OAPlaintextSignatureProviderTest in OAPlaintextSignatureProviderTest.o
_OBJC_METACLASS_$_OARequestParameterTest in OARequestParameterTest.o
...
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)
答案 0 :(得分:23)
从Xcode 4.2升级后,我得到了与模拟器相同的链接错误 - > 4.3.1。我注意到4.3.1中的新项目与单元测试有关,所以只是比较了项目差异。
为我修好的是: -
实际上,单元测试也可以在设备上正常运行。
答案 1 :(得分:2)
看起来这是Apple的意外(或故意)遗漏。
如果(且仅当)您是注册的Apple Developer,您可以登录Apple Developer论坛,如果您copy this linked search query into your browser address bar,您会看到其他人遇到同样的问题。
现在看起来你只能在模拟器上使用SenTestingKit。
答案 2 :(得分:2)
我在Xcode 4.4上遇到了类似的问题。 我的解决途径: 从主目标(被测系统)“链接二进制文件库”中删除了SetTestingKit.framework,将其保留在测试目标中。不知道为什么它最终会在那里结束。
答案 3 :(得分:0)
我相信这个错误现在已在Xcode 4.4.1
中修复答案 4 :(得分:0)
使用xcode 4.6并尝试添加facebook SDK 3.1我遇到了这个问题,因为我没有选择将文件添加到我的测试目标。
复制框架时应检查两个目标。
答案 5 :(得分:-1)
我刚升级到4.3.1 SenTestingKit框架存在问题。我从项目中删除了测试源代码,它构建正常。它可以在5.1设备上运行。但是当我在模拟器上运行时,我得到_ dyld _dyld_start错误。我不得不从项目中删除SenTestingKit,使其在模拟器上运行。