[Lldb-commits] [PATCH] D70387: [LLDB] [Windows] Allow making subprocesses use the debugger's console with LLDB_INHERIT_CONSOLE=true

Greg Clayton via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Mon Nov 18 11:08:29 PST 2019

clayborg added a comment.

> When running the lldb command line debugger in a console, it can be convenient to get the output of the debuggee inline in the same console.

agreed. It just did the default behavior of launching in a command.exe since that is what windows does by default.

> The same behaviour also seems possible to enable by setting the eLaunchFlagDisableSTDIO flag somehow, but I wasn't able to figure out how to set that when calling the normal lldb.exe.

(lldb) process launch  --no-stdio

> Also extend a nearby getenv() call to check for both "true" and "1".
> There seems to be a number of different patterns for using getenv() in lldb; either just check for a variable being set (most common), or check for a number of different values. The check for LLDB_LAUNCH_INFERIORS_WITHOUT_CONSOLE only used to check for the string "true", while e.g. the newly added check for LLDB_USE_LLDB_SERVER in source/Plugins/Process/Windows/Common/ProcessWindows.cpp checks for any of on/yes/1/true.

So by default Windows has done things differently since the start. The way things work now is:

- by default the program is launched in a terminal window on windows (right?)
- if you add --tty to "process launch" it probably does nothing as it is already doing this
- there is no way to just get the process output in the current lldb window

The way I would like to see things work if we can indeed get the output in the LLDB process:

- by default we don't open a console window, and just display the output in LLDB (do what LLDB_LAUNCH_INFERIORS_WITHOUT_CONSOLE does?)
- if we specify --tty, then allow the process to be run in a separate window (like it defaults to currently)
- if we specify --disable--stdio, then disable STDIO (all output goes to equivalent of /dev/null)





More information about the lldb-commits mailing list