microsoft / microsoft/vscode-cpptools
macOS Sierra cannot debug c++ above vscode-cpptools 1.5.1 version
Nessuno ha ancora preso questa issue.
- Lingua principale
- TypeScript
- Stelle
- 6.2k
- Fork
- 1.7k
- Merge medio
- 14h 46m
- PR unite (30g)
- 61
Descrizione
Environment
- OS and version: macOS Sierra(10.12.6)
- VS Code: 1.67.0
- C/C++ extension: 1.6.0~1.10.0
- Xcode version: 9.2 (9C40b)
- GDB / LLDB version:
/usr/local/bin/gdb version11.2
/usr/bin/lldb --versionlldb-900.0.64
Bug Summary and Steps to Reproduce
Bug Summary:
I use C/C++ extension 1.10.0 debug single C++ file with launch.json:
"version": "0.2.0",
"configurations": [
{
"name": "(lldb) 启动",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/main",
"args": [],
"stopAtEntry": true,
"cwd": "${fileDirname}",
"environment": [],
"externalConsole": false,
"MIMode": "lldb",
"miDebuggerPath": "/Users/witton/.vscode/extensions/ms-vscode.cpptools-1.10.0-darwin-x64/debugAdapters/lldb/bin/lldb-mi",
"logging": {
"trace": true,
"engineLogging": true,
"traceResponse": true,
}
}
]
}
but it does not work.
I set
"MIMode": "gdb",
"miDebuggerPath": "/usr/local/bin/gdb"
still not work, the gdb installed by brew, version 11.2.
I reverse the cpptools version to 1.51 work well.
another related discussion
so, I think against lldb there is a problem with the debugAdapters version released for MacOS High Sierra and lower.
Debugger Configurations
tasks.json
{
"tasks": [
{
"type": "cppbuild",
"label": "C/C++: clang++ 生成活动文件",
"command": "/usr/bin/clang++",
"args": [
"-fdiagnostics-color=always",
"-g",
"${file}",
"-o",
"${fileDirname}/${fileBasenameNoExtension}"
],
"options": {
"cwd": "${fileDirname}"
},
"problemMatcher": [
"$gcc"
],
"group": {
"kind": "build",
"isDefault": true
},
"detail": "调试器生成的任务。"
}
],
"version": "2.0.0"
}
launch.json
{
// 使用 IntelliSense 了解相关属性。
// 悬停以查看现有属性的描述。
// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "(lldb) 启动",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/main",
"args": [],
"stopAtEntry": true,
"cwd": "${fileDirname}",
"environment": [],
"externalConsole": false,
"MIMode": "lldb",
"miDebuggerPath": "/Users/witton/.vscode/extensions/ms-vscode.cpptools-1.10.0-darwin-x64/debugAdapters/lldb/bin/lldb-mi",
"logging": {
"trace": true,
"engineLogging": true,
"traceResponse": true,
}
}
]
}
### Debugger Logs
```shell
`Debug Console` output nothing.
`Output windows` tab `C/C++` output:
启动配置:
{
"name": "(lldb) 启动",
"type": "cppdbg",
"request": "launch",
"program": "/Users/witton/demo/main",
"args": [],
"stopAtEntry": true,
"cwd": ".",
"environment": [],
"externalConsole": false,
"MIMode": "lldb",
"miDebuggerPath": "/Users/witton/.vscode/extensions/ms-vscode.cpptools-1.10.0-darwin-x64/debugAdapters/lldb/bin/lldb-mi",
"logging": {
"trace": true,
"engineLogging": true,
"traceResponse": true
},
"__configurationTarget": 5
}
### Other Extensions
_No response_
### Additional Information
_No response_
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 riproducendo il problema con i file tasks.json e launch.json forniti su macOS Sierra, utilizzando le versioni indicate dell’estensione C/C++, di LLDB e di GDB. Confronta il comportamento con la versione 1.5.1 dell’estensione e analizza l’output di C/C++ e i log del debugger; il lavoro è completato quando il debug di un singolo file C++ funziona sulla configurazione interessata con un’estensione più recente.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- cpp
- Ambito
- devtools
- Tipo di issue
- Bug
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Stato di attività
- Ferma
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 25/100