2016-12-06 52 views
0

我有一個應用程序,使用文件時,報告說,它在Mach-O的2個架構的iOS脂肪的二進制文件和細化了

iPad:~/map/MyApp.app root# file MyApp 
    MyApp: Mach-O fat file with 2 architectures 

編輯 - 我還檢查該用Xcode的工具

xcrun -sdk iphoneos lipo -info 
MyApp Architectures in the fat file: MyApp are: armv7 arm64 

當我使用otool定位架構中,我可以看到我有2,ARMv7的(cpusubtype 9)和ARM64(cpysubtype 0)

iPad:~/map/MyApp.app root# otool -arch all -Vh MyApp 
MyApp (architecture cputype (12) cpusubtype (9)): 
Mach header 
    magic cputype cpusubtype caps filetype ncmds sizeofcmds  flags 
MH_MAGIC  ARM   9 0x00  EXECUTE 41  4760 NOUNDEFS DYLDLINK TWOLEVEL PIE 

MyApp (architecture cputype (16777228) cpusubtype (0)): 
Mach header 
    magic cputype cpusubtype caps filetype ncmds sizeofcmds  flags 
MH_MAGIC_64 16777228   0 0x00  EXECUTE 41  5368 NOUNDEFS DYLDLINK TWOLEVEL PIE 

然而,當我嘗試使用脂瘦了二進制,我收到以下錯誤

iPad:~/map/MyApp.app root# lipo -thin armv7 MyApp -output ~/map/myappv7 
-sh: /usr/bin/lipo: Bad CPU type in executable 

任何想法,爲什麼我不能想出這個特定的二進制? 我更新了我的lipo二進制文件,與之前使用armv7時所說的一樣:沒有這種類型的架構。

+0

請使用'文件MyApp'仔細檢查所包含的切片。 – shallowThought

+0

嗨,我已經這樣做了,它在問題的頂部:'MyApp:具有2個架構的Mach-O胖文件' –

+0

啊,對不起。這裏提供了更詳細的信息。也許嘗試使用Xcodes lipo:'xcrun -sdk iphoneos lipo -info MyApp'。也許也爲稀疏。 – shallowThought

回答

2

我們有幾個問題,我們過去無法用lipo來解釋,他們都沒有問題,使用Xcode s lipo

試試看:

xcrun -sdk iphoneos lipo -thin armv7 MyApp -output ~/map/myappv7