microsoft / microsoft/vscode-cpptools
MIMode lldb unkown options
Offen
Dieses Issue hat noch niemand übernommen.
debugger
help wanted
- Vorherrschende Sprache
- TypeScript
- Sterne
- 6.2k
- Forks
- 1.7k
- Ø Merge
- 14 Std. 46 Min.
- Gemergte PRs (30 T.)
- 61
Beschreibung
Environment
- OS and version: Arch Linux x86_64 and Kernel 6.4.12-arch1-1
- VS Code: 1.82.0 8b617bd08fd9e3fc94d14adb8d358b56e3f72314 x64
- C/C++ extension: v1.17.5
- OS and version of remote machine (if applicable):
- GDB / LLDB version: lldb version 16.0.6
Bug Summary and Steps to Reproduce
Bug Summary:
Can't use lldb with cppdgb.
Steps to reproduce:
try to debug any c program with the configuration provided.
Debugger Configurations
{
"name": "cppdbg",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/build/main",
"cwd": "${workspaceFolder}",
"MIMode": "lldb",
"miDebuggerPath": "lldb",
}
Debugger Logs
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (198) LaunchOptions{\"name\":\"cppdbg\",\"type\":\"cppdbg\",\"request\":\"launch\",\"program\":\"/home/dh/Programms/llvm/build/main\",\"cwd\":\"/home/dh/Programms/llvm\",\"MIMode\":\"lldb\",\"miDebuggerPath\":\"lldb\",\"preLaunchTask\":\"make\",\"logging\":{\"engineLogging\":true,\"trace\":true,\"traceResponse\":true},\"__configurationTarget\":6,\"configSource\":\"workspaceFolder\",\"debugType\":\"debug\",\"__sessionId\":\"78ac6fca-a9a9-4fee-886c-6ebed1ead182\"}\n"},"seq":2}
1: (198) LaunchOptions{"name":"cppdbg","type":"cppdbg","request":"launch","program":"/home/dh/Programms/llvm/build/main","cwd":"/home/dh/Programms/llvm","MIMode":"lldb","miDebuggerPath":"lldb","preLaunchTask":"make","logging":{"engineLogging":true,"trace":true,"traceResponse":true},"__configurationTarget":6,"configSource":"workspaceFolder","debugType":"debug","__sessionId":"78ac6fca-a9a9-4fee-886c-6ebed1ead182"}
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (241) DbgCmd:echo $$ > /tmp/Microsoft-MIEngine-Pid-ytth1ufk.buj ; cd \"/home/dh/Programms/llvm/build\" ; DbgTerm=`tty` ; set -o monitor ; trap 'rm \"/tmp/Microsoft-MIEngine-In-j45tl1g2.p5r\" \"/tmp/Microsoft-MIEngine-Out-ml23qzr3.qiy\" \"/tmp/Microsoft-MIEngine-Pid-ytth1ufk.buj\" \"/tmp/Microsoft-MIEngine-Cmd-hv42go4j.w5c\"' EXIT ; \"/usr/bin/lldb\" --interpreter=mi --tty=$DbgTerm < \"/tmp/Microsoft-MIEngine-In-j45tl1g2.p5r\" > \"/tmp/Microsoft-MIEngine-Out-ml23qzr3.qiy\" & clear; pid=$! ; echo $pid > \"/tmp/Microsoft-MIEngine-Pid-ytth1ufk.buj\" ; wait $pid; \n"},"seq":4}
1: (241) DbgCmd:echo $$ > /tmp/Microsoft-MIEngine-Pid-ytth1ufk.buj ; cd "/home/dh/Programms/llvm/build" ; DbgTerm=`tty` ; set -o monitor ; trap 'rm "/tmp/Microsoft-MIEngine-In-j45tl1g2.p5r" "/tmp/Microsoft-MIEngine-Out-ml23qzr3.qiy" "/tmp/Microsoft-MIEngine-Pid-ytth1ufk.buj" "/tmp/Microsoft-MIEngine-Cmd-hv42go4j.w5c"' EXIT ; "/usr/bin/lldb" --interpreter=mi --tty=$DbgTerm < "/tmp/Microsoft-MIEngine-In-j45tl1g2.p5r" > "/tmp/Microsoft-MIEngine-Out-ml23qzr3.qiy" & clear; pid=$! ; echo $pid > "/tmp/Microsoft-MIEngine-Pid-ytth1ufk.buj" ; wait $pid;
--> C (runInTerminal-6): {"type":"request","command":"runInTerminal","arguments":{"kind":"integrated","title":"cppdbg: main","cwd":"","args":["/bin/sh","/tmp/Microsoft-MIEngine-Cmd-hv42go4j.w5c"],"env":{}},"seq":6}
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (253) Wait for connection completion.\n"},"seq":8}
1: (253) Wait for connection completion.
Other Extensions
No response
Additional Information
cppdbg terminal output
error: unknown option: --interpreter=mi
error: unknown option: --tty=/dev/pts/3
Use 'lldb --help' for a complete list of options.
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginnen Sie mit der cppdbg-Startkonfiguration unter Verwendung von MIMode und miDebuggerPath und reproduzieren Sie anschließend den in den Debugger-Logs gezeigten LLDB-Aufruf. Verfolgen Sie, warum der Start lldb --interpreter=mi und --tty übergibt, und überprüfen Sie, dass das Debuggen eines C-Programms ohne die gemeldeten Fehler zu unbekannten Optionen startet.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- cpp, typescript
- Bereich
- devtools, tooling
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 38/100