Macho文件瀏覽器---MachOView

前言:

MachOView下載地址:linux

MachOView源碼地址:git

Mach-O格式全稱爲Mach Object文件格式的縮寫,是mac上可執行文件的格式,相似於windows上的PE格式 (Portable Executable ), linux上的elf格式 (Executable and Linking Format)。github

mach-o文件類型分爲:windows

一、Executable:應用的主要二進制架構

二、Dylib Library:動態連接庫(又稱DSO或DLL)工具

三、Static Library:靜態連接庫spa

四、Bundle:不能被連接的Dylib,只能在運行時使用dlopen( )加載,可當作macOS的插件.net

五、Relocatable Object File :可重定向文件類型插件

那什麼又是FatFile/FatBinary?code

簡單來講,就是一個由不一樣的編譯架構後的Mach-O產物所合成的集合體。一個架構的mach-O只能在相同架構的機器或者模擬器上用,爲了支持不一樣架構須要一個集合體。

著做權歸做者全部。商業轉載請聯繫做者得到受權,非商業轉載請註明出處。

1、使用方式

一、MachOView工具概述

MachOView工具可Mac平臺中可查看MachO文件格式信息,IOS系統中可執行程序屬於Mach-O文件格式,MachOView工具屬於免費開源項目,源代碼可在https://github.com/gdbinit/Ma...下載,
圖片描述

在左邊窗口點擊「Mach Header」選項,能夠看到每一個類的cpu架構信息、load commands數量 、load commandssize 、file type等信息。

查看Fat文件

圖片描述

t文件只是對各類架構文件的組裝,點開 「Fat Header」能夠看到支持的架構,圖中顯示的支持ARM_V7 、ARM_64

小命令:

ipo LoginSDK.a -thin armv7 -output arm/LoginSDK.a ##  將fat文件拆分獲得armv7類型
lipo  -create    ibSyncSDKA.i386.a    libSyncSDK.arm7.a  -output  libSyncSDK.a  ##合成一個i386和armV7架構的fat文件
相關文章
相關標籤/搜索