[英]How to verify that app binary is pie enabled
由於Apple嚴厲打擊提交的未啟用PIE的應用,因此我將目標版本設置為4.3,並將“不生成與位置無關的可執行文件”設置為“否”,但是當我提交給Apple時,他們仍然返回說“非PIE二進制文件-可執行文件“ MyApp”不是位置獨立的可執行文件。請確保將構建設置配置為創建PIE可執行文件。”
有人知道我需要更改其他哪些設置嗎?
謝謝
您只需要檢查它是否運行良好,請轉到終端並將自己放在根文件夾中(只需鍵入cd並按Enter鍵),然后在終端中鍵入以下行:$ otool -hv /path/to/MyApp.app/MyApp(/ path / to / MyApp.app / MyApp應該是您的應用程序的路徑)
要獲取您的應用程序的路徑,請轉到xCode,在“產品”文件夾中,找到您的應用程序,右鍵單擊它並在finder中顯示,在finder中右鍵單擊它並獲取信息 ,然后找到路線。 您只需要在該路由的末尾添加yourApp.app/yourApp
在終端中運行該行之后,將顯示以下內容:
Mach header
magic cputype cpusubtype caps filetype ncmds sizeofcmds flags
MH_MAGIC ARM V7 0x00 EXECUTE 39 4548 NOUNDEFS DYLDLINK TWOLEVEL PIE
/Users/AGMacBookOscar/Library/Developer/Xcode/DerivedData/Stache-dryffgnvhpkbsxguxecizmadewxv/Build/Products/Debug-iphoneos/Wisdom.app/Wisdom (architecture armv7s):
Mach header
magic cputype cpusubtype caps filetype ncmds sizeofcmds flags
MH_MAGIC ARM V7S 0x00 EXECUTE 39 4548 NOUNDEFS DYLDLINK TWOLEVEL PIE
如果在標志部分下有一個PIE,則一切正常,您可以在此處獲取信息:
https://developer.apple.com/library/ios/#qa/qa1788/_index.html#/apple_ref/doc/uid/DTS40013354
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.