我已經使用cMake爲ARM7構建了一些靜態庫。 通常,當您使用下一個命令.a文件時,它顯示體系結構:「otool」和「file」無法顯示「.a」文件的體系結構
f.e.
mac:libs User$ file ./libcurl.a
./libcurl.a: Mach-O universal binary with 3 architectures
./libcurl.a (for architecture armv6): current ar archive random library
./libcurl.a (for architecture armv7): current ar archive random library
./libcurl.a (for architecture i386): current ar archive random library
或f.e.
mac:libs User$ otool -vf ./libboost_regex.a
Fat headers
fat_magic FAT_MAGIC
nfat_arch 3
architecture armv6
cputype CPU_TYPE_ARM
cpusubtype CPU_SUBTYPE_ARM_V6
capabilities 0x0
offset 68
size 9550024
align 2^2 (4)
architecture armv7
cputype CPU_TYPE_ARM
cpusubtype CPU_SUBTYPE_ARM_V7
capabilities 0x0
offset 9550092
size 9390544
align 2^2 (4)
architecture i386
cputype CPU_TYPE_I386
cpusubtype CPU_SUBTYPE_I386_ALL
capabilities 0x0
offset 18940636
size 9595040
align 2^2 (4)
但現在,當我建立我的圖書館,「otool」和「文件」不能顯示它的架構。
mac:libs User$ otool -vf ./mylib_meta.a
Archive : ./mylib_meta.a
這是什麼意思?我可以在建立圖書館時做什麼錯誤?
更新: 伊戈爾,謝謝!
我萃取命令對象文件:
AR -t mylib.a上
AR -xv mylib.a上myobj.o
-t示出二進制代碼的列表
-xv提取具體的二進制文件