Community
Participate
Working Groups
In debug launch mode, right now user can't see program stdout in anyway. This is due to (1) there is no proper IO forwarding registered. (2) GDB MI doesn't write output to target stream when not run remotely. The proposed fix is to open a pair of pseduo terminal devices, and utilize --tty option with GDB to establish the communication channel between master terminal and slave terminal. That way, whatever output GDB writes to the slave terminal can be read from the master device. The attached patch file is very preliminary, there are a few things I think there should be better way of handling. For example, the iof_debug_callback() is largely a duplicate of iof_callback(), the only difference is how to locate the job. A extra flag, for example, would be better. Since this will involve changing a API, I will leave this to the reviewer to decide what's best. Also note that in the current patch form, you can see program output in the console window if the patch I previously submitted is applied. However, I can't click on individual process to view their output - the menu item is simply not there - probably a bug or my particular environment setup.
Created attachment 79985 [details] patch to register target stream callback
Created attachment 79986 [details] pseduo terminal for creating master and slave pseduo terminal.
Created attachment 79987 [details] patch to invoke gdb with pseduo terminal, and select listen for output
Created attachment 79988 [details] patch to include MIPty.c into the build
Note: I haven't reviewed the comments Greg gave to my previous patch very closely yet. I know some stuff is nonconforming - such as header notice etc. I will fix that when the logic/correctness been oked. thanks
Created attachment 79993 [details] patch orte proxy to register io forwarding
MIPty.c needs to have a license statement added before it can be accepted.
Created attachment 80795 [details] add copyright notice
This is now fixed in head.