microsoft / microsoft/vscode-cpptools
Failed to open /dev/tty with vscode debugger
Nessuno ha ancora preso questa issue.
- Lingua principale
- TypeScript
- Stelle
- 6.2k
- Fork
- 1.7k
- Merge medio
- 14h 46m
- PR unite (30g)
- 61
Descrizione
In my program, I tried to read /dev/tty. The program cannot open the file with vscode debugger, but the file is successfully opened with gdb command line.
The source code is:
#include <stdio.h>
#include <fcntl.h>
int main(int argc, char const *argv[])
{
int f = open("/dev/tty", O_RDONLY);
printf("open tty %d\n",f);
return 0;
}
The program is then build with g++ -g ./main.cpp.
When I use gdb to debug in vscode, it gives:
open tty -1
However, with command line gdb ./a.out, the file can be open successfully.
(gdb) r
Starting program: /home/miki0w0/c_test/a.out
open tty 3
[Inferior 1 (process 22818) exited normally]
(gdb) q
A same open issue can be found at https://stackoverflow.com/questions/52027368/unable-to-open-dev-ttyusb0-while-debugging-with-visual-studio-code-on-linux.
The vscode debugger works well in other cases. I wounder what causes the difference and how to fix it.
The environment is:
- OS and Version: Ubuntu 16.04
- VS Code Version: 1.32.3
- C/C++ Extension Version: 0.22.1
- Other extensions you installed (and if the issue persists after disabling them): None
Additional context
My configure file is:
launch.json.txt.
And the log information is included in this file:
debuglog.txt
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Inizia confrontando i file allegati launch.json e debuglog.txt con l’invocazione di gdb dalla riga di comando, quindi esamina come il debugger C++ di VS Code avvia il programma e gli fornisce il terminale di controllo. Riproduci il problema sulla configurazione Ubuntu 16.04 indicata con il programma di esempio /dev/tty; il lavoro è completato quando l’esecuzione di debug di VS Code apre /dev/tty come l’esecuzione dalla riga di comando.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- cpp, linux, vscode
- Ambito
- devtools, operating-systems, tooling
- Tipo di issue
- Bug
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Stato di attività
- Ferma
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 35/100