我一直在尝试使用 LLDB 查找程序中分段错误的位置。我已经转到repl.it上的 Ubuntu shell并使用编译我的代码clang++-7 -pthread -std=c++17 -o main main.cpp -g,并且程序编译成功。接下来,我运行lldb main,一切都很好,但一旦我输入,run我就会得到error: process launch failed: 'A' packet returned an error: 8. 我检查了文档并查找了错误,但我似乎找不到任何东西。感谢您的任何帮助!
完整日志:
~/Project$ clang++-7 -pthread -std=c++17 -o main main.cpp -g
~/Project$ lldb main
(lldb) target create "main"
Current executable set to 'main' (x86_64).
(lldb) run
error: process launch failed: 'A' packet returned an error: 8
Run Code Online (Sandbox Code Playgroud)
如果您需要代码,请访问此 Github: https: //github.com/KingsleyDockerill/Wirth
对于那些使用的人Docker,正如这里提到的,他们需要添加--cap-add=SYS_PTRACE --security-opt seccomp=unconfined到他们的docker run命令中才能使用lldb。
为devcontainer添加这些属性
{
"capAdd": ["SYS_PTRACE"],
"securityOpt": ["seccomp=unconfined"]
}
Run Code Online (Sandbox Code Playgroud)
另请参阅这个较旧的答案。
| 归档时间: |
|
| 查看次数: |
3565 次 |
| 最近记录: |