【问题标题】:Building for UIKit for Mac, but the linked framework 'XXX.framework' was built for macOS为 Mac 的 UIKit 构建,但链接框架“XXX.framework”是为 macOS 构建的
【发布时间】:2019-11-01 19:27:57
【问题描述】:
我通过 Project Catalyst 创建了一个新应用程序,该应用程序可在 Xcode 11 Beta 2 上的 iPhone 和 Mac 上运行。为此,我有 2 个专门为“macOS”和“iOS”构建的框架。添加该框架后,我收到以下错误!
这里是我如何将框架添加到项目中的!
有人可以帮忙吗?虽然,没有添加框架项目正在运行,只有 2 个UILabel。
【问题讨论】:
标签:
ios
swift
macos
xcode11
macos-catalina
【解决方案1】:
项目设置中的这个“macOS”平台可能会令人困惑,因为它实际上仅表示 macOS Catalyst。
错误消息表示该框架是为通常的 macOS 平台构建的,而不是为 macOS Catalyst 构建的。
AFAIK 您不能将 macOS 库和框架混入 Catalyst 应用程序中
(来源:https://developer.apple.com/forums/thread/117229)现在(Xcode 11.6,2020 年 8 月)。
为了解决这个问题,您需要以某种方式获得一个框架版本,该版本是专门为 Catalyst 从源代码重建的。
为 Catalyst 构建时,库的构建方式存在一些构建配置差异,其中一些值得注意的是:
- SDK_NAME=macosx10.15
- clang -target x86_64-apple-ios13.0-macabi
...可能还有更多。