对,这已经成为一个正确的痛苦我已经看了 2 天了,似乎无法解决它。这是我遇到的错误。
Undefined symbols for architecture armv7:
"_SCNetworkReachabilityCreateWithAddress", referenced from:
+[Reachability reachabilityWithAddress:] in Reachability.o
"_SCNetworkReachabilityCreateWithName", referenced from:
+[Reachability reachabilityWithHostName:] in Reachability.o
"_SCNetworkReachabilityUnscheduleFromRunLoop", referenced from:
-[Reachability stopNotifier] in Reachability.o
"_SCNetworkReachabilityScheduleWithRunLoop", referenced from:
-[Reachability startNotifier] in Reachability.o
"_SCNetworkReachabilitySetCallback", referenced from:
-[Reachability startNotifier] in Reachability.o
"_SCNetworkReachabilityGetFlags", referenced from:
-[Reachability connectionRequired] in Reachability.o
-[Reachability currentReachabilityStatus] in Reachability.o
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)
我已经添加了 SystemConfiguration.framework 但它似乎不想对它做任何事情,因为这个错误不会消失。我已经看过很多相同的问题,但其中很多都确认了任何答案。这种情况是周末才发展起来的,当时还没有人碰过它。谁能帮忙。
编辑 忘记添加这个位。
ld: warning: ignoring file /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.1.sdk/System/Library/Frameworks//SystemConfiguration.framework/SystemConfiguration, missing required architecture armv7 in file
编辑
对了 感谢@gaige 我发现了一个问题;在 SystemConfiguration.framework 之前有一个不应该存在的额外斜线。我删除了框架并重新添加,但没有帮助。我怎样才能删除这个多余的斜杠?
最佳答案
通常,额外的斜杠不会破坏类似 UNIX 的构建过程。
但是,您确实需要确保 armv7 架构位于您的构建尝试使用的框架文件中。为此,请在命令行中使用 lipo -info
命令:
lipo -info /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.1.sdk/System/Library/Frameworks//SystemConfiguration.framework/SystemConfiguration
你应该看到这样的输出:
Architectures in the fat file: SystemConfiguration are: armv6 armv7
如果不这样做,您的项目可能设置为链接到错误版本的 SystemConfiguration.framework。您的机器上有多个版本的框架。因此,我将验证您项目中的框架路径(即 SystemConfiguration)。
通常,我希望该文件是这样的(针对您使用的操作系统版本进行了调整):
/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk/System/Library/Frameworks/SystemConfiguration.framework
关于iphone - 架构 armv7 的 undefined symbol : "_SCNetworkReachabilityCreateWithAddress",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10930156/