OGeek|极客世界-中国程序员成长平台

标题: ios - 目标 Sharpie 在使用 iPhoneos 9.3 时看不到旧版 iPhone SDK [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-12 11:54
标题: ios - 目标 Sharpie 在使用 iPhoneos 9.3 时看不到旧版 iPhone SDK

我正在尝试绑定(bind)一个框架,该框架有自己的 Info.plist,它需要 iphoneos8.2。根据文档

https://developer.xamarin.com/guides/cross-platform/macios/binding/objective-sharpie/tools/

我安装了 Xcode 6.2,它在 Applications/Contents/...

sharpie xcode -sdks -v

应返回在/Application/Xcode*.app 中找到的任何 sdk。但是,我的输出仍然只显示 9.3 sdks。我还尝试按照其他帖子中的建议将 8.2 sdk 复制到 Xcode.app/Contents/.. 文件夹中,但无济于事。输出确实同时看到 Xcode 7.3.1 和 6.2,但它没有列出 sdk:Xcode 6.2 下的 iphoneos8.2 只有 macosx10.10 sdk。就像我说的那样,8.2 iphoneos8.2 在 6.2 的 contents/developer/sdks 文件夹中得到确认。

有谁知道为什么 8.2 sdk 不会被 sharpie 找到?



Best Answer-推荐答案


所以这是为什么没有出现的简短说明。

目标 Sharpie 枚举 /Applications/Xcode*.app因此你会认为它会拾取旧的 iphoneos SDK。但是它不能这样做,因为它依赖于 clang其中clang具有针对相应 iphoneos 的最低兼容性版本, macosx , 和 watchos .因此在这种情况下,iphoneos必须 > 8.3,任何满足此要求的都将根据 sharpie xcode -sdks 进行检测命令。

这些当然直接来自clang:

http://clang.llvm.org/docs/AttributeReference.html#availability

iOS

Apple 的 iOS 操作系统。最小部署目标由 -mios-version-min=*version* 指定或 -miphoneos-version-min=*version*命令行参数。

苹果电脑

Apple 的 Mac OS X 操作系统。最小部署目标由 -mmacosx-version-min=*version* 指定命令行参数。出于向后兼容性原因支持 macosx,但已弃用。

tvos

Apple 的 tvOS 操作系统。最小部署目标由 -mtvos-version-min=*version* 指定命令行参数。

watch

Apple 的 watchOS 操作系统。最小部署目标由 -mwatchos-version-min=*version* 指定命令行参数。

关于ios - 目标 Sharpie 在使用 iPhoneos 9.3 时看不到旧版 iPhone SDK,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39048954/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://ogeek.cn/) Powered by Discuz! X3.4