導航:首頁 > 文件教程 > ios查看庫文件架構

ios查看庫文件架構

發布時間:2023-10-23 03:33:13

① iOS開發中常用命令工具(xcode-select、lipo、xcrun等)

當安裝多個xcode的版本,使用該工具使用指定的版本。

-p 或者 --print-path 查看當前開發者目錄,也即是xcode的版本目錄。print the path of the active developer directory
-s <path> 或 --switch <path> 選擇xcode的版本
--install 安裝
--version 查看版本
--reset 恢復默認
sudo rm -rf /Library/Developer/CommandLineTools 強制刪除安裝目錄下的文件

是管理Fat File的工具, 可以查看cpu架構, 提取特定架構,整合和拆分庫文件。

Mac OS X下二進制可執行文件的動態鏈接庫是dylib文件。所謂dylib,就是bsd風格的動態庫。基本可以認為等價於windows的dll和linux的so。mac基於bsd,所以也使用的是dylib。

Linux下用 ldd 查看,蘋果系統用 otool 。

otool命令介紹
MobSF
Mach-O 文件格式解析

xcodebuild :通過工程文件,生成app文件。
xcrun :通過app文件,來生成ipa文件(包含了簽名的過程)。

通過app文件生成ipa文件

libtool是一個通用庫支持腳本(/usr/bin/libtool),將使用動態庫的復雜性隱藏在統一、可移植的介面中。

可以在不同平台上創建並調用動態庫,我們可以認為libtool是gcc的一個抽象,也就是說,它包裝了gcc或者其他的任何編譯器,用戶無需知道細節, 只要告訴libtool說我需要要編譯哪些庫即可,並且,它只與libtool文件打交道,例如lo、la為後綴的文件。
libtool工具的使用

庫是一單獨的文件,裡麵包含了按照特定的結構組織起來的其它的一些文件(稱做此庫文件的member)。原始文件的內容、模式、時間戳、屬主、組等屬性都保留在庫文件中。
詳細命令參見, 菜鳥網路-ar命令

可以用來創建、修改庫,也可以從庫中提出單個模塊。

lipo libAFNetworking.a -thin arm64 -output lib-arm64.a 生成Arm64包

ar -t lib-arm64.a 輸出包含的.o文件 和 otool -L libAFNetworking.a 一樣。

ar -x lib-arm64.a 解壓出包裡面的.o文件

在iOS開發中,常常用來分析二進制和靜態庫文件。
列出 .o .a .so 中的符號信息,包括諸如符號的值,符號類型及符號名稱等。所謂符號,通常指定義出的函數,全局變數等等。

iOS開發中,可以用來查看.a靜態庫所有打包進去的.o文件和函數介面信息,幫助我們定位崩潰信息。
例如: nm -u libAFNetworking.a 列出某個.o文件的介面信息。

二進制查看命令,將文件顯示為16進制字元串表示形式。
例如: xxd libYTKNetwork.a | grep "net" 查看YTKNetwork.a文件裡麵包含net字元串的,幫助我們分析一些二進制文件。

DWARF文件初探——提取輕量符號表

Mac系統下lipo, ar, nm等工具的使用簡介
美團 iOS 工程 zsource 命令背後的那些事兒
Linux工具參考篇
iOS 靜態庫沖突 兩個不同的.o 文件沖突 ,靜態庫分離

閱讀全文

與ios查看庫文件架構相關的資料

熱點內容
微信個人轉發量統計 瀏覽:196
怎麼樣將app里按鈕變大 瀏覽:769
狼蛛鼠找不到配置文件 瀏覽:845
土豪金編程器軟體打不開什麼原因 瀏覽:957
備分數據換SD片是什麼意思 瀏覽:666
jmp數據分析時主要看哪些參數 瀏覽:59
js循環 瀏覽:505
大數據大二學生可以做哪些實習 瀏覽:567
微信上沒有小程序選項 瀏覽:839
電腦桌面的excel文件不顯示圖標 瀏覽:992
ios無法綁定支付寶支付密碼 瀏覽:6
linux文件系統叫什麼 瀏覽:721
在wps中文件找不到了 瀏覽:59
大數據涉及哪些行業 瀏覽:215
系統印象文件找不到也無法刪除 瀏覽:594
ps文件線段不顯示 瀏覽:129
win10主題清華同方 瀏覽:114
文件5weh 瀏覽:296
java標准庫c標准庫 瀏覽:101
90版本天御刺客 瀏覽:719

友情鏈接