microsoft / microsoft/vscode-cpptools

[Enhancement] GDB attach config in Linux should not have "program" as a required parameter

Aperta
#5,713 4 commenti 3 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

debugger enhancement
Lingua principale
TypeScript
Stelle
6.2k
Fork
1.7k
Merge medio
14h 46m
PR unite (30g)
61

Descrizione

Type: Debugger

Describe the bug

  • OS and Version: Linux (All versions)
  • VS Code Version: 1.46.1
  • C/C++ Extension Version: v0.29.0-insiders
  • Other extensions you installed (and if the issue persists after disabling them): Not Applicable
  • A clear and concise description of what the bug is.

I have been using VS Code with C/C++ Debugger extensively for debugging running applications in Linux
GDB attach config in Linux currently needs path to executable i.e. the "program" parameter in launch.json
This parameter is marked as "required" in the json schema
Standalone GDB can attach to a process using just the "pid".

Can this extension be enhanced to support attach configuration with just a pid / attachQuickPick
If the executable path is necessary, then I suppose it can be queried using proc file system (/proc/'pid'/cmdline or /proc/'pid'/exe)

To Reproduce
Please include a code sample and launch.json configuration.
Steps to reproduce the behavior:

  1. Use the attached "launch.json"
    launch.json.zip

  2. Start this launch config

  3. Select a process to attach the debugger to

  4. A popup is displayed that attach property "program" is missing ("1.png")
    1

)

Additional context
If applicable, please include logging by adding "logging": { "engineLogging": true, "trace": true, "traceResponse": true } in your launch.json
Add any other context about the problem here including log or error messages in your Debug Console or Output windows.

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Inizia riproducendo il comportamento con il launch.json allegato e verifica in che modo la configurazione di attach di Linux GDB contrassegna o convalida il parametro del programma. Confrontalo con l’attach tramite pid e con i percorsi documentati /proc/pid/cmdline o /proc/pid/exe. Il lavoro è completato quando una configurazione di attach Linux che utilizza solo un pid può avviarsi senza la richiesta relativa al programma mancante.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
cpp, linux, typescript
Ambito
devtools, operating-systems
Tipo di issue
Funzionalità
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
32/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.