我有兴趣验证给定的iPhone静态库是否是为ARM或英特尔构建的。
好奇心比任何东西都要强。有没有某种Mac或BSD特定的工具可以做到这一点?这个post给出了Linux中的一个例子。
发布于 2010-04-14 18:20:37
另一种选择是lipo
;它的输出比otool
的输出简短且更具可读性。
举个例子:
% lipo -info /usr/lib/libiodbc.a
Architectures in the fat file: /usr/lib/libiodbc.a are: x86_64 i386 ppc
% lipo -info libnonfatarchive.a
input file libnonfatarchive.a is not a fat file
Non-fat file: libnonfatarchive.a is architecture: i386
%
发布于 2009-07-06 02:23:45
file
可能会告诉你。otool
当然应该能够做到。但我会先试试file
,例如:
logan:/Users/logan% file d2
d2: Mach-O executable ppc
存档示例:
logan:/Users/logan% file /usr/lib/libMallocDebug.a
/usr/lib/libMallocDebug.a: Mach-O universal binary with 2 architectures
/usr/lib/libMallocDebug.a (for architecture i386): current ar archive random library
/usr/lib/libMallocDebug.a (for architecture ppc): current ar archive
发布于 2017-02-08 06:04:20
此bash脚本将帮助您以编程方式将架构列表放入一个变量中。
list_archs.sh:
#! /bin/bash
lipo -info $1 | sed -En -e 's/^(Non-|Architectures in the )fat file: .+( is architecture| are): (.*)$/\3/p'
使用示例:
./list_archs.sh /usr/lib/libc.dylib
x86_64 i386
https://stackoverflow.com/questions/1085137
复制相似问题