检查静态库的iOS部署目标
我有很多像libBlah.a
静态库file
工具,我可以检查支持的体系结构。 (arm64或i386)
有工具来检查静态库的iOS Deployment Target
?
您可以使用otool
来检查库文件。 通过一些实验,我发现标志-lv
给了我有用的输出。 打开一个terminal窗口并切换到您的图书馆所在的目录:
cd /path/to/parent/directory
(提示:您可以将图标从取景器窗口的标题栏拖到terminal,它将进入您的path)。 然后键入以下命令:
otool -lv myStaticLibrary.a | less
input/ (search),然后LC_VERSION_MIN_IPHONEOS
。 你应该看到这样的东西:
Load command 1 cmd LC_VERSION_MIN_IPHONEOS cmdsize 16 version 7.0 sdk n/a
部署目标应该是version
旁边的值。
目标OS版本在静态库的MachO头的LC_VERSION_MIN_IPHONEOS加载命令中编码。 您可以通过以下方式查看:
otool -l mylib.a | grep -A 3 LC_VERSION
示例输出:
cmd LC_VERSION_MIN_IPHONEOS cmdsize 16 version 9.0 sdk n/a
你有没有尝试过使用预处理macros?
#if IPHONEOS_DEPLOYMENT_TARGET (iOS Deployment Target)