Xcode 升级到Version 11.4 (11E146)版本后,部分不支持模拟器的SDK在编译时报错:
Building for UIKit for Mac, but the linked framework 'XXX.framework' was built for macOS
经过尝试解决问题,然后总结出有2种解决方案。
1.修改当前工程的File -> Workspaces Setting,可以将工程的Build System修改成Legacy Build System。编译可以编译成功。(如果修改到Legacy Build System有报错,可以查看Legacy Build System下报错,可以逐一解决)。
2.若使用New Build System的,可以去Build Settings中搜索EXCLUDED_SOURCE_FILE_NAMES,添加Debug模式下,用模拟器编译下忽略的文件。
3.工程中引用不支持模拟器编译库的时候,也需要区分是不是模拟器区分引用。
#if !targetEnvironment(simulator)
// .....
#endif
最后附上官方类似问题解决方案:Apple Developer Forums