XCode4 apps always crash on startup when debugging on device
I just finished installing XCode 4 and am having a bit of trouble. When I go to run a new project on my iPad using IOS 4.2, the app crashes before it starts up. If I then click on the icon for the app, it opens and runs just fine. What gives? Why won't it run through the debugger? I never had these issues with XCode before I upgraded to version 4.
Edit:
The error I get from the console is below as requested:
GNU gdb 6.3.50-20050815 (Apple version gdb-1518) (Sat Feb 12 02:56:02 UTC 2011)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "--host=x86_64-apple-darwin --target=arm-apple-darwin".tty /dev/ttys001
warning: Unable to read symbols from "dyld" (prefix __dyld_) (not yet mapped into memory).
warning: Unable to read symbols for /Developer/Platforms/iPhoneOS.platform/DeviceSupport/4.2 (8C134)/Symbols/System/Library/Frameworks/UIKit.framework/UIKit (file not found).
warning: Unable to read symbols from "UIKit" (not yet mapped into memory).
warning: Unable to read symbols from "Foundation" (not yet mapped into memory).
warning: Unable to read symbols for /Developer/Platforms/iPhoneOS.platform/DeviceSupport/4.2 (8C134)/Symbols/System/Library/Frameworks/CoreGraphics.framework/CoreGraphics (file not found).
warning: Unable to read symbols from "CoreGraphics" (not yet mapped into memory).
warning: Unable to read symbols from "libgcc_s.1.dylib" (not yet mapped into memory).
warning: Unable to read symbols from "libSystem.B.dylib" (not yet mapped into memory).
warning: Unable to read symbols from "libobjc.A.dylib" (not yet mapped into memory).
warning: Unable to read symbols from "CoreFoundat开发者_如何学运维ion" (not yet mapped into memory).
target remote-mobile /tmp/.XcodeGDBRemote-832-35
Switching to remote-macosx protocol
mem 0x1000 0x3fffffff cache
mem 0x40000000 0xffffffff none
mem 0x00000000 0x0fff none
[Switching to process 11523 thread 0x0]
[Switching to process 11523 thread 0x0]
gdb stack crawl at point of internal error:
0 gdb-arm-apple-darwin 0x000000010010974a internal_vproblem + 308
1 gdb-arm-apple-darwin 0x0000000100109924 internal_verror + 27
2 gdb-arm-apple-darwin 0x00000001001099c2 align_down + 0
3 gdb-arm-apple-darwin 0x0000000100150c5e macosx_solib_add + 794
4 gdb-arm-apple-darwin 0x000000010016417c remote_macosx_complete_create_or_attach + 187
5 gdb-arm-apple-darwin 0x000000010016489e remote_macosx_create_inferior + 1252
6 gdb-arm-apple-darwin 0x000000010005f6c3 run_command_1 + 586
7 gdb-arm-apple-darwin 0x0000000100107b7f execute_command + 557
8 gdb-arm-apple-darwin 0x00000001000171e7 mi_execute_async_cli_command + 204
9 gdb-arm-apple-darwin 0x00000001000168e5 captured_mi_execute_command + 344
10 gdb-arm-apple-darwin 0x0000000100072a62 catch_exception + 57
11 gdb-arm-apple-darwin 0x000000010001443e mi_execute_command + 140
12 gdb-arm-apple-darwin 0x0000000100077721 process_event + 133
13 gdb-arm-apple-darwin 0x0000000100078435 gdb_do_one_event + 1049
14 gdb-arm-apple-darwin 0x0000000100072b49 catch_errors + 70
/SourceCache/gdb/gdb-1518/src/gdb/macosx/macosx-nat-dyld.c:1648: internal-error: unrecognized shared library breakpoint
A problem internal to GDB has been detected,
further debugging may prove unreliable.
Any ideas?
I just tried running the same projects on my co-workers iPhone, and it ran fine. So it's something wrong with my iPad. Guess all of those error codes mean I need to wipe my iPad and restore. Anyone else have this experience?
I had the same problem, and got so annoyed that I started poking around Xcode4 to try and fix it.
I found a way to come around this problem by clicking on the Device Selection dropdown menu and selecting Edit Schemes at the bottom. Then you change the Launch option to "Wait for [your app name here].app to launch"
When you run, though, you'll have to click the app icon on your device. Every time. At least it works.
Good luck!
精彩评论