相当简单的问题 - 如果我有.framework
文件,是否有可用于确定用于创建框架的SDK和部署目标版本的命令/工具?
同样,这可以在存储在.app文件中的应用程序二进制文件上执行吗?我希望自动化一个脚本,它将搜索以前构建的应用程序/框架列表,而不需要原始的.xcodeproj
文件,并确定它们的高/低支持的操作系统版本。
答案 0 :(得分:23)
要查找某些二进制文件的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
答案 1 :(得分:0)
在 Big Sur 11.4 上,我检查:
otool -l my_binary | grep minos
输出例如:
minos 11.0