build.sh ios 使用 XCode6 Beta6 时生成“架构 armv7 的未定义符号”
Posted
技术标签:
【中文标题】build.sh ios 使用 XCode6 Beta6 时生成“架构 armv7 的未定义符号”【英文标题】:build.sh ios generates "Undefined symbols for architecture armv7" when using XCode6 Beta6 【发布时间】:2014-08-19 14:37:24 【问题描述】:在从 github 重新结帐领域 master 时,我运行以下命令:
XCODE_VERSION=6 sh build.sh ios
这会导致以下错误....
ld: warning: embedded dylibs/frameworks only run on iOS 8 or later
Undefined symbols for architecture armv7:
"_swift_stdlib_atomicCompareExchangeStrongPtr", referenced from:
__TFVSs11_StringCore14_claimCapacityfRS_FTSi15minElementWidthSi_TSiVSs14COpaquePointer_ in RLMSwiftSupport.o
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)
** BUILD FAILED **
The following build commands failed:
Ld build/DerivedData/Realm-Xcode6/Build/Intermediates/Realm-Xcode6.build/Release-iphoneos/iOS.build/Objects-normal/arm64/Realm normal arm64
Ld build/DerivedData/Realm-Xcode6/Build/Intermediates/Realm-Xcode6.build/Release-iphoneos/iOS.build/Objects-normal/armv7/Realm normal armv7
(2 failures)
任何已知的解决方法?
【问题讨论】:
【参考方案1】:这是一个问题,其中 DerivedData 从 beta5 开始出现问题。通过完全删除 DerivedData 然后重新运行构建,它解决了我的问题。
很棒的 Realm 团队提醒我,在 beta 版本之间删除 DerivedData 文件夹总是一个好主意。
【讨论】:
你刚刚为我节省了数小时拔掉我头上剩下的小头发的时间!!!非常感谢这个!!!顺便说一句,在此处选择您的答案作为有效的答案 - 单击复选标记。【参考方案2】:鉴于 Xcode6-Beta6 刚刚于昨天发布,Realm 尚未更新以支持它。使用XCODE_VERSION=6 sh build.sh ios
构建 Realm 目前需要 Xcode6-Beta5。
您可以监控 Realm 的 GitHub 存储库 (github.com/realm/realm-cocoa) 以查看何时支持 Xcode6-Beta6。应该是今天或明天。
编辑:请关注PR #814 的进度。
【讨论】:
以上是关于build.sh ios 使用 XCode6 Beta6 时生成“架构 armv7 的未定义符号”的主要内容,如果未能解决你的问题,请参考以下文章
我的空 swift 应用程序在部署目标 7.1 的 xcode6-beta 上崩溃
启用 sonarscanner 时 Appcenter iOS 构建失败