我对 iOS 开发有点新,并遇到了一个我似乎无法修复的问题。我正在开发 XCode8 ,使用 Swift3通用项目,我已经通过 Carthage 添加了各种框架(直到知道了工作完美无瑕)。我试图添加的最新框架RATreeView(Objective-C)给我带来了一些麻烦。
当我构建时,我得到 Apple Mach-O Linker 警告:(用于路径简洁的省略号)
ld: warning: ignoring file /Users/.../RATreeViewDemo/Carthage/Build/iOS/RATreeView.framework/RATreeView, missing required architecture x86_64 in file /Users/.../RATreeViewDemo/Carthage/Build/iOS/RATreeView.framework/RATreeView (2 slices)
后面跟着 Shell脚本调用错误:(用于路径简洁的省略号)
Failed to read file or folder at /Users/.../RATreeViewDemo/Carthage/Build/iOS/RATreeView.framework
Command /bin/sh failed with exit code 1
任何人都可以解释我所缺少的东西吗?该文件夹在那里,框架文件存在。我已将其添加到我的链接框架和库,并有一个构建阶段脚本来正确复制框架...但是我不知道如何确保可以使用合适的架构。
作为一个完整性检查我尝试了另一个CocoaPod设置,这似乎工作正常,但我真的很想坚持使用迦太基。任何人都可以帮助我吗?
答案 0 :(得分:0)
发生此问题是因为您链接的框架不包含x86_64切片。据推测,它只包含一个armv7s和一个arm64切片(用于设备构建)。
如果此框架来自第三方,您应该请求包含intel切片的框架版本,这样您就可以在为模拟器构建时使用它。
如果你自己构建了这个框架,你需要为模拟器平台构建它,以便在模拟器构建中使用它。