簡體   English   中英

更新xcode 4.5和iOS 6后,應用程序在啟動時崩潰

[英]App crashes on start after update xcode 4.5 and iOS 6

更新到xcode 4.5,將設備更新到iOS 6之后,我的應用在啟動時崩潰。 在模擬器上,它工作正常,但是當我在設備上運行它時,它崩潰了。

它加載了加載屏幕,然后崩潰說:

dyld`dyld_fatal_error:
0x2fe8b0c4:  trap   <-- Thread 1: trace   
0x2fe8b0c8:  nop 

dyld: vm_protect(0x00001000, 0x00582000, false, 0x07) failed, result=2 for
segment __TEXT in /var/mobile/Applications/*number*-****-****-****-
*number*****/appname.app/appname
(lldb) 

我遇到了這個問題,並重建了整個應用程序


它還說:

(null): PIE disabled. Absolute addressing (perhaps -mdynamic-no-pic) not allowed in code signed PIE, but used in ___block_global_101 from /Users/me/Library/Developer/Xcode/DerivedData/appname-csulsqjo‌​qjjyyahcxrvjqbpzyxot/Build/Intermediates/appname.build/Debug-iphoneos/appname.build/Objects-normal/armv7s/GameViewController.o. To fix this warning, don't compile with -mdynamic-no-pic or link with -Wl,-no_pie –


當我輸入BT時,會出現:

* thread #1: tid = 0x2503, 0x2fe8e0c4 dyld`dyld_fatal_error, stop reason = trace
frame #0: 0x2fe8e0c4 dyld`dyld_fatal_error
frame #1: 0x2fe8eef2 dyld`dyld::halt(char const*) + 78
frame #2: 0x2fe916e8 dyld`dyld::_main(macho_header const*, unsigned long, int, char const**, char const**, char const**, unsigned long*) + 1432
frame #3: 0x2fe8e330 dyld`dyldbootstrap::start(macho_header const*, int, char const**, long, macho_header const*, unsigned long*) + 608
frame #4: 0x2fe8e068 dyld`_dyld_start + 64

當我從一個.m文件中刪除所有代碼時,該應用確實啟動了,因此我知道問題出在那兒,但是它的.m文件非常大

在方案診斷中刪除Guard Malloc選項。 這就是導致我出錯的原因。

在此處輸入圖片說明

在意外禁用C ++子項目中的動態鏈接后,我遇到了此錯誤,這導致-static標志在編譯時傳遞給clang。

通過在LLVM編譯器語言設置中將“啟用與共享庫的鏈接”切換為“是”(默認設置)來擺脫它。 (這將從項目文件中刪除GCC_LINK_WITH_DYNAMIC_LIBRARIES = NO )。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM