• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: How do you debug a C++ Standard Tool Application?
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: How do you debug a C++ Standard Tool Application?


  • Subject: Re: How do you debug a C++ Standard Tool Application?
  • From: Jim Ingham <email@hidden>
  • Date: Wed, 22 Sep 2004 09:28:10 -0700

As Wade says, so long as you aren't doing funny things with the terminal, gdb & the target program should be able to share the same channels. So long as the target is running, it gets the terminal, and then when you break into gdb, gdb gets the terminal. I debug gdb under gdb all the time, and they share the terminal just fine...

It would be interesting to know in what circumstances this isn't working for you. If you can reduce this to a manageable case, please do file a bug about it.

However, if you do have special needs (like you are debugging a curses app, or something similar) one convenient trick is to:

1) Bring up a new terminal, and note the tty for that terminal (it will show in the Title bar if you haven't monkey'd with the Titles...)
2) start up gdb from ANOTHER terminal window with:


$ gdb --tty=/dev/ttyp6

or whatever the tty was for your new window.

Now gdb will hook the target app up to the second terminal, and use the terminal it was launched from for gdb command input.

Hope this helps,

Jim


On Sep 21, 2004, at 8:09 PM, Wade Tregaskis wrote:

Debugging works fine, as long as you don't need stdin. Obviously, program stdin conflicts with GDB's commands.

Are you sure? GDB does have a lot of bugs regarding stdin/stdout (particularly with multi-threaded programs, I've noticed, but then it's terribly buggy with such apps anyway), but it does work in some (arguably most) cases... if you mean you can't control gdb and the program at once, then yes, but you can always control-C to get to gdb's prompt from your program, and then "c" (continue) to resume your program. Assuming your input isn't time sensitive, and you don't block the relevant signal for ctrl-C, etc.


Wade Tregaskis (aim & yahoo: wadetregaskis, icq: 40056898, msn & email: email@hidden, jabber: email@hidden)
-- Sed quis custodiet ipsos custodes?


_______________________________________________
Do not post admin requests to the list. They will be ignored.
Xcode-users mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Xcode-users mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden


References: 
 >XCode 1.5: Can't debug after performing Deployment build (From: Robert Cerny <email@hidden>)
 >Re: XCode 1.5: Can't debug after performing Deployment build (From: Robert Cerny <email@hidden>)
 >How do you debug a C++ Standard Tool Application? (From: Richard Dunlap <email@hidden>)
 >Re: How do you debug a C++ Standard Tool Application? (From: Wade Tregaskis <email@hidden>)

  • Prev by Date: Re: Making 'close' perform a 'quit'
  • Next by Date: Re: How do you debug a C++ Standard Tool Application?
  • Previous by thread: Re: How do you debug a C++ Standard Tool Application?
  • Next by thread: Re: How do you debug a C++ Standard Tool Application?
  • Index(es):
    • Date
    • Thread