(原)用xcode9編譯出ios越獄機程序使用的dylib
阿新 • • 發佈:2018-10-29
export flag project exe round evel mac 架構 too
magic cputype cpusubtype caps filetype ncmds sizeofcmds flags
MH_MAGIC_64 ARM64 ALL 0x00 DYLIB 17 1464 NOUNDEFS DYLDLINK TWOLEVEL NO_REEXPORTED_DYLIBS
因為xcode9默認不能創建dylib工程,所以 選擇 靜態庫 工程後,修改編譯選項使得變成dylib工程.
步驟:
一、xcode9 -> File -> New -> Project... -> Cocoa Touch Static Library
二、xcode的最上面編譯按鈕(三角形)右邊有個工程名字的按鈕,點了選擇越獄真機(如果選的是模擬器則不能生成arm64的體系架構,只能生成x86_64的體系架構)。
三、修改工程的Build Settings:
- iOS Deployment Target: 這裏要修改成越獄機的ios版本。如 iOS 10.3
- Mach-O Type: 修改為:Dynamic Library
- Executable Extension: 修改為:dylib
- Product Name: 隨你意願修改成你想生成的庫的名字.
四、驗證:
- build success後,右鍵xcode左邊側邊欄Products下的生成物(如libtest.dylib) -> Show In Finder
- 找到生成物libtest.dylib的path。
- 終端命令: # otool -hv /path/libtest.dylib
- 看顯示的體系架構和filetype,如下就對了:
Mach header
magic cputype cpusubtype caps filetype ncmds sizeofcmds flags
MH_MAGIC_64 ARM64 ALL 0x00 DYLIB 17 1464 NOUNDEFS DYLDLINK TWOLEVEL NO_REEXPORTED_DYLIBS
(原)用xcode9編譯出ios越獄機程序使用的dylib