| Summary: | ncurses test program crashes during debug | ||
|---|---|---|---|
| Product: | [Applications] kdevelop | Reporter: | Adam Vollmer <avollmer> |
| Component: | CPP Debugger | Assignee: | kdevelop-bugs-null |
| Status: | RESOLVED DUPLICATE | ||
| Severity: | normal | CC: | adaptee, apaku, finex, konsole-bugs-null, niko.sams |
| Priority: | NOR | ||
| Version First Reported In: | 3.5.1 | ||
| Target Milestone: | --- | ||
| Platform: | Ubuntu | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed/Implemented In: | ||
| Sentry Crash Report: | |||
|
Description
Adam Vollmer
2008-08-18 22:14:39 UTC
I've upgraded to 3.5.2-4, and the debugger no longer stops on initscr. Ok, the upgrade isn't the kicker. Running "kdevelop &" from the console allows me to correctly debug curses programs. Running kdevelop via the programs menu will not work correctly. I suspect curses is getting its cues as to the terminal type based on how kdevelop is launched. I can confirm that running kdevelop from anything but a terminal causes the stepping to end when initializing the curses interface. A little test shows that in fact the problem is that the TERM variable is not set when launching inside konsole. I'm re-assigning this to konsole, as AFAIK its supposed to set that variable even if just running an application. I can confirm that running kdevelop from anything but a terminal causes the stepping to end when initializing the curses interface. A little test shows that in fact the problem is that the TERM variable is not set when launching inside konsole. I'm re-assigning this to konsole, as AFAIK its supposed to set that variable even if just running an application. Changed severity to "crash". I hope to have selected only the right bugs (>100) :-) Has anyone tried a recent Konsole version? If I understand #3, the issue is running KDevelop from the KDE menu and upon using gdb causes it to crash? The suspect is that Konsole Part is not setting TERM? I tried to reproduce this problem but was blocked by another issue. KDevelop kept telling me "GDB cannot use the tty* or pty* devices." I am a little confused by the relationship between gdb, konsole and the target executable. The basic problem is : who starts the target executable? I thought it was konsole, but running 'ps aux|grep konsole' returned this : konsole -caption kdevelop: Debug application console -e sh -c tty>/tmp/debug_tty.9YX3BR;trap "" INT QUIT TSTP;exec<&-;exec>&-;while :;do sleep 3600;done My rough understanding is konsole is simply used to display the I/O. The target executable is not started by konsole, but by gdb. Am I right? If that is the truth, then of course $TERM is not set, because konsole is only responsible for and capable of setting $TERM for executable/process started by it. Starting kdevelop from terminal won't have this problem, because $TERM is already set and will be inherited by child processes. Just my 2 cents. Hope some kdevelop developer can clarify my confusion. Assign it to kdevelop. See comment #3 and #7. I think this would be solved if gdb could use an external console, thus marking as duplicate of that bug. Correct me if I'm wrong. *** This bug has been marked as a duplicate of bug 204638 *** |