相当简单的问题 - 如果我有一个.framework
文件,是否有可用于确定用于创建框架的 SDK 和部署目标版本的命令/工具?
同样,这可以在 .app 文件中存储的应用程序二进制文件上执行吗?我正在寻找自动化一个脚本,该脚本将搜索先前构建的应用程序/框架的列表,而不需要原始.xcodeproj
文件,并确定它们支持的高/低操作系统版本。
要找出一些二进制文件的 SDK 和部署目标,您应该探索 LC_VERSION_MIN_MACOSX 加载命令。用于otool -l <some_binary>
查看加载命令。
例子:
$otool -l my_binary
...
Load command 9
cmd LC_VERSION_MIN_MACOSX
cmdsize 16
version 10.7
sdk 10.8
...
$otool -l /System/Library/Frameworks/CoreWLAN.framework/CoreWLAN
...
Load command 8
cmd LC_VERSION_MIN_MACOSX
cmdsize 16
version 10.8
sdk 10.8
...
管道示例grep
:
otool -l my_binary | grep -A 3 LC_VERSION_MIN_MACOSX
在 Big Sur 11.4 上,我检查:
otool -l my_binary | grep minos
输出例如:
minos 11.0