Reputation: 1470
Whilst using Xcode 4.0 and trying to debug and see what value is held in what variable - or see what objects are in an array etc, I always seem to get "Summary Unavailable" or "Invalid Summary".
The problem seems much like the one in 3.2.6 if you built and ran a release version with the symbols stripped.
Any chance that any one knows where I am going wrong, or what the resolution is For years things worked smoothly - then Apple stepped in - again.
Thanks
Upvotes: 31
Views: 8454
Reputation: 3872
I have battled this issue for quite a while and I finally figured out the issue. I have several build configurations in my application (Debug, Release, UAT). When I hit 'Run' on my main scheme then I am using the 'UAT' configuration -- not 'Debug'. I realized that I was stripping debug symbols for my 'UAT' and 'Release' configurations. I simply modified my build settings to not strip debug symbols for the 'UAT' build configuration and voila, all my symbols are available again.
I am using XCode 4.5.1, but have seen this issue for quite a while on various projects. I assume that most of my projects use the 'Debug' build configuration by default and therefore were working fine. Only when I started getting fancy with my schemes and build configurations did I come across this issue.
Upvotes: 0
Reputation: 6382
I had that problem. If you explicitly declare the ivars in your h file, they should show up in the debugger as expected.
@synthesize
will create the proper ivers for you, but it does not always make them accessible in the debugger endless you use the command line po to look at them.
Upvotes: 0
Reputation: 329
This happened to me upon upgrade to xCode 4.3.1.
I found that editting the Run/Debug scheme and changing the Debugger setting in the Info tab from LLDB to GDB fixed the problem.
Upvotes: 0
Reputation: 21
Start your app up in debug
IN XCODE 4.02, go to Product/Debug/Shared Libraries
The window that appears tells you which dynamicLibs are loaded
Scroll down until you see "libXcodeDebuggerSupport.dylib Click the "Load" button, and then "Done"
After stopping on a breakpoint, the contents of a string should be printed in blue after the object's address.
Hope this helps!
Upvotes: 2
Reputation: 1300
You can also try changing the "Summary Format" in the GDB window. Try something like {(NSString *)[$VAR description]}:s as the Summary format - this works for NSManagedObject derived objects.
Upvotes: 5
Reputation: 121
While waiting for Apple to fix Xcode 4 you can try using "Print Description", which prints the value to console.
Upvotes: 2
Reputation: 70976
You're not going wrong, Xcode 4 is. This problem is pretty common, unfortunately. Report it at http://bugreport.apple.com/ and hope for the best.
In the meantime you can inspect variables using the console, which appears at the bottom of Xcode 4's window during debugging. If you have an object "myObj", you can inspect it in the console by typing "po myObj". It's a lot less convenient but it's better than not getting the information at all.
Upvotes: 13