2010-10-06 20 views
11

Ich benutze Qt Creator auf Ubuntu zu entwickeln C. Immer wenn ich mit dem Debugger laufe, bekomme ich die Nachricht warning: GDB: Failed to set controlling terminal: Invalid argument. Dies geschieht sogar mit einem hello world Programm. Wie kann ich das lösen?Warnung: GDB: Konnte Terminal nicht setzen: Ungültiges Argument

+0

Hey Joel, hast du die Lösung für dieses Problem gefunden? Das Kopieren von libQtCore.so.4 funktioniert nicht für mich – blueskin

+0

Nein ... Ich ignoriere nur die Warnung, da das Debugging funktioniert – JoelFan

Antwort

8

Dies ist ein Fehler in Qt Creator, der GDB nicht korrekt aufruft (entweder in einem Pseudo-Terminal oder mit Befehlszeilenargumenten, die sagen, dass er nicht erwartet, dass er in einem Pseudoterminal ausgeführt wird). Es ist auch ein Fehler in GDB, der für sich selbst herausfinden konnte, dass er nicht in einem Pseudoterminal ausgeführt wurde und sich dementsprechend verhält. Ich vermute, dass die GDB-Betreuer die Position einnehmen werden, dass Qt Creator daran schuld ist und umgekehrt.

Es gibt eine beanspruchte Problemumgehung hier: http://www.qtforum.org/article/31905/debugging-qt-application-on-linux.html, aber es klingt ein bisschen zwielichtig für mich.

+0

Was sind die Folgen dieses Fehlers, neben der Warnmeldung? Jede Möglichkeit zu überprüfen, ob es in der Quellcodeverwaltung (in jedem Projekt) behoben ist, damit ich es erstellen kann? – JoelFan

+0

Ich weiß nicht! Meine Diagnose basiert * ganz * auf dem, was du geschrieben hast + was ich in Google "qt creator gdb controlling terminal" eingegeben habe. Einige Leute scheinen zu denken, dass es den Debugger nicht funktioniert, aber wenn der Debugger für Sie funktioniert, denke ich, dass es harmlos sein sollte. – zwol

+0

Nun, ich beginne gerade mit Qt Creator, aber in meinem kleinen Testprogramm mit einer einfachen * for * -Schleife schien der Debugger zu funktionieren – JoelFan

0

Ob diese Warnung ein Bug ist oder nicht, ist informativ als Hinweis, dass Sie QtCreator mitteilen können, dass Ihr Programm in einem Terminal ausgeführt wird, das für die Debugausgabe nützlich sein kann. Siehe Setup GDB with QtCreator, um diese Option zu aktivieren.

Wenn Sie kein Terminal geöffnet haben möchten, ignorieren Sie einfach die Warnung.

Verwandte Themen