This is the mail archive of the gdb@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: gdb/mi


I have some questions/comments about gdb/mi if someone could help out:

1. I've configure gdb 5.2 with --enable-gdbmi and --with-uiout. However when I run "gdb --interpreter=mi" the initial messages are not in console stream output format, but later messages are. Is this by design?
You mean the (C) startup message? No one has thought about that.
(BTW, you no longer need to explicitly configure in GDB/MI, since 5.2, it has been enabled by default).
Seems like Apple must have already fixed this in the MacOS X version (which is 5.0). Here is the output from 'gdb -i mi' to prove it. :-)

~"GNU gdb 5.0 (Thu Jun 20 15:19:17 GMT 2002)\n"
~"Copyright 2002 Free Software Foundation, Inc.\n"
~"GDB is free software, covered by the GNU General Public License, and you are\n"
~"welcome to change it and/or distribute copies of it under certain conditions.\n"
~"Type \"show copying\" to see the conditions.\n"
~"There is absolutely no warranty for GDB. Type \"show warranty\" for details.\n"
~"This GDB was configured as \"powerpc-apple-darwin5.5\".\n"
~"Setting up the environment for debugging gdb.\n"

2. When I run a target program, it's output is not in target stream output format. Should this be the case?
It depends.

This is a problem that has been discussed before on this list. If the target program is native then GDB would need to do something like play with pty's or start a separate terminal program. If the target is remote then the output being encapsulated depends on support for this in the remote protocol.
Oh damn! I thought you'd already done the hard stuff and I could get rid of the pty code from my front end. I guess that means that asynchronous commands will only work with remote targets as well? Can you point me at the approximate archive so I can review this discussion?


3. The gdb/mi output syntax in the manual does not quite reflect reality. In particular the 'console-stream-output', 'target-stream-output' and 'log-stream-output' rules should be suffixed with 'nl'. Also, I've observed an 'out-of-band-record' appearing after a 'result-record' but the syntax doesn't allow this. I guess it should be something like:

output -> (out-of-band-record)* [result-record] (out-of-band-record)* "(gdb)" nl
Yes (but I'll fix it a different way).  Good catch.
If you're going to allow general program output to be intermingled with the mi output then this should probably also be reflected in the syntax.

Do you know if there are any plans to handle native output within the mi syntax, or would you be interested in someone adding this functionality, or is it likely to be too difficult?

Cheers,

Greg




Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]