Build it with the debug flags enabled and then run it in the debugger. It is either that, or sprinkling a bunch of print statements through your code to help isolate the problem. For core dump exceptions like this, I find that running in the debugger is the better choice. For non-fatal, but inappropriate behavior (wrong output for given input for example), then diagnostic print statements can be very useful.
The two reasons I usually get this is either 0) The nib file name is misspelled (the solution to this is obvious) or 1) The nib file isn't being compiled into the target I'm building. To fix this, select your nib file in your project navigator and open the file inspector and make sure that the Target Membership is correctly set.