【发布时间】:2015-03-09 16:23:10
【问题描述】:
我很好奇如果我在 Mac 应用程序中链接到 iOS 模拟器框架会发生什么。所以我将 UIKit 复制到它自己的文件夹中(因此框架搜索路径不会包括所有 iOS 模拟器框架,就像 CoreFoundation 在 Mac 和 iOS 上但有不同的标题),并将其拖到 Xcode 中的链接部分。 Xcode 给我的错误是:
为 MacOSX 构建,但链接到为 iOS 模拟器构建的 dylib 文件'/Users/jonathan/Desktop/macuikit/UIKit.framework/UIKit' 架构 x86_64
这两种架构都是 x86_64,所以它怎么知道框架是专门为 iOS 模拟器设计的,我删除了 Info.plist 之类的所有对 iOS 的引用,甚至尝试删除除了 UIKit 二进制文件之外的所有内容,但出现了同样的错误.二进制文件中是否有一些东西告诉链接器它可以在哪个平台上运行,而不仅仅是架构?我查看了 Mach-O 标头,但只有 CPU 类型和子类型字段,并且都没有预期的模拟器值。
【问题讨论】:
-
据我了解,这个问题是关于错误,而不是故意尝试链接到模拟器二进制文件。
标签: ios objective-c xcode macos