如何编译与 UIKit for Mac/Catalyst 一起使用的第三方库?



如果您尝试在iOS 13项目中使用第三方库(使用make或cmake编译)并打开"UIKit For Mac"选项,Xcode会对该库不满意。它会抱怨提供的库是为错误的架构编译的(如果您将其指向iphoneos版本)。或者,它会抱怨它是为错误的平台编译的(如果您将其指向模拟器或 Mac 版本)。我需要在 Makefile 中指定哪些设置才能使 Xcode 接受"UIKit for Mac"选项下的库?

好吧,经过一段时间的挖掘,我发现如果你为clang提供以下目标(在调用configure之前设置CFLAGS变量),它会编译正确版本的库(注意-macabi后缀):

-target x86_64-apple-ios${MIN_IOS_VERSION}-macabi

我还在 macOS 版本中添加了最低操作系统版本标志:

-mmacosx-version-min=${MIN_OSX_VERSION}

这里MIN_IOS_VERSION="13.0"MIN_OSX_VERSION="10.15"

相关内容

  • 没有找到相关文章

最新更新