2011-03-18 63 views
15

我試圖從ARMv6及ARMv7體系結構,即庫中刪除重複的對象,如何將「胖」庫變成「非胖」庫?

$脂-info libx.a 架構FAT文件: libx.a是:用於ARMv6的ARMv7

正如預期的那樣,「ar d」不直接工作,所以我使用「lipo -extract」來拆分庫。然而,由此產生的圖書館仍然是「胖」的架構。

$ AR d libx中-armv6.a offendingduplicate.o AR: libx中-armv6.a是FAT文件((1)或脂(1)和AR(1)在其上使用的libtool ) AR:libx中-armv6.a:不適當的文件 類型或格式

$脂-info X-armv6.a架構 FAT文件:libx.a是:ARMv6的

我怎麼能取消 - 認證圖書館? (你可以想象一下當你在谷歌搜索'刪除胖胖文件'時出現的各種鏈接)幫助!!)

+1

爲什麼這個標籤的linux?我不認爲在Linux中支持通用二進制文件 – shodanex 2011-03-18 14:38:40

回答

31

我不熟悉lipo,但從它的man page,看起來你應該是能夠做到這一點:

lipo libx.a -thin armv6 -output libx-armv6.a 
lipo libx.a -thin armv7 -output libx-armv7.a