我最近不得不复制我自己的框架,以便能够将它们与原生 watchOS 2 扩展链接起来,因为平台不同。所以对于每个框架 XI 都有一个 X-watchos 对应物。在模拟器中以及直接构建到我的设备时一切正常,直到我尝试存档时才收到此链接错误:
我lipo -i
在构建的 watchOS 框架上运行,果然,它的拱门是arm7
和arm64
而不是armv7k
.
当我进一步查看构建目录时,我注意到了这一点:
两个版本都是指向同一个文件的符号链接,并且因为它们具有相同的产品名称,所以它们被覆盖了。我可以让它们具有不同的名称,但这会使import
它们变得非常麻烦。
请注意,这对于第 3 方框架来说不是问题,因为Carthage
它们已经在单独的目录中构建它们。
编辑 2015 年 8 月 22 日:我已经提交了一个带有示例项目的雷达:http ://www.openradar.me/22392501
编辑 08/24/2015:这已在 Xcode 7 Beta 6 发行说明中确认为已知问题:
编辑 2015 年 9 月 9 日:Xcode 7.1 Beta 发行说明暗示此问题已修复,但我尚未确认。