導航:首頁 > 文件教程 > 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查看庫文件架構相關的資料

熱點內容
mdfldf是什麼文件 瀏覽:569
文件在桌面怎麼刪除干凈 瀏覽:439
馬蘭士67cd機版本 瀏覽:542
javaweb爬蟲程序 瀏覽:537
word中千位分隔符 瀏覽:392
迷你編程七天任務的地圖怎麼過 瀏覽:844
word2003格式不對 瀏覽:86
百度雲怎麼編輯文件在哪裡 瀏覽:304
起名app數據哪裡來的 瀏覽:888
微信怎麼去泡妞 瀏覽:52
百度廣告html代碼 瀏覽:244
qq瀏覽器轉換完成後的文件在哪裡 瀏覽:623
jsp中的session 瀏覽:621
壓縮完了文件去哪裡找 瀏覽:380
武裝突襲3浩方聯機版本 瀏覽:674
網路機頂盒移動網路 瀏覽:391
iphone手機百度雲怎麼保存到qq 瀏覽:148
資料庫設計與實踐讀後感 瀏覽:112
js對象是什麼 瀏覽:744
網頁文件存pdf 瀏覽:567

友情鏈接