microsoft / microsoft/vscode-cpptools
module containing this breakpoint has not yet loaded on setting breakpoints
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 6.2k
- Forks
- 1.7k
- Avg merge
- 14h 46m
- Merged PRs (30d)
- 61
Description
I've been unable to track down my mistake - although I'm sure this is a setup issue on my side.
I am connecting to a container; and mounting the code in the same directory as on the host PC:
-v /home/brent/repos/Open3D:/home/brent/repos/Open3D
I've built the code in the container; not via vscode; and am trying to launch and debug an executable. The executable launches; but whenever I set a breakpoint it goes clear and I get the hover over message: module containing this breakpoint has not yet loaded
Debug output:
Launch configuration:
{
"name": "g++-9 - Launch visualizer",
"type": "cppdbg",
"request": "launch",
"program": "/home/brent/repos/Open3D/build/bin/examples/Visualizer",
"args": [
"pointcloud",
"/home/brent/repos/Open3D/examples/test_data/fragment.ply"
],
"stopAtEntry": false,
"cwd": "/home/brent/repos/Open3D/build",
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"sourceFileMap": {
"/home/brent/repos/Open3D": "/home/brent/repos/Open3D"
},
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
],
"preLaunchTask": "C/C++: g++-9 build active file",
"miDebuggerPath": "/bin/gdb",
"logging": {
"trace": true,
"traceResponse": true,
"engineLogging": true,
"exceptions": true,
"moduleLoad": true,
"programOutput": true
},
"__configurationTarget": 5
}
cpptools/fileCreated: file:///home/brent/repos/Open3D/.vscode/launch
cpptools/fileDeleted: file:///home/brent/repos/Open3D/.vscode/launch
Checking for syntax errors: file:///home/brent/repos/Open3D/examples/cpp/Visualizer.cpp
Queueing IntelliSense update for files in translation unit of: /home/brent/repos/Open3D/examples/cpp/Visualizer.cpp
cpptools/finishUpdateSquiggles
Error squiggle count: 0
Error squiggle count: 0
Update IntelliSense time (sec): 0.29
cpptools/getSemanticTokens: file:///home/brent/repos/Open3D/examples/cpp/Visualizer.cpp (id: 318)
cpptools/getSemanticTokens: file:///home/brent/repos/Open3D/cpp/open3d/geometry/TriangleMesh.h (id: 319)
In the container; I am able to hit a breakpoint if I launch the executable with gdb directly
root@f521657f69ae:/home/brent/repos/Open3D/build/bin/examples# gdb Visualizer
GNU gdb (Ubuntu 9.2-0ubuntu1~20.04) 9.2
Copyright (C) 2020 Free Software Foundation, Inc.
Type "apropos word" to search for commands related to "word"...
Reading symbols from Visualizer...
(gdb)
(gdb) b main
Breakpoint 1 at 0x13ad52
(gdb) info b
Num Type Disp Enb Address What
1 breakpoint keep y 0x000000000013ad52 <main>
(gdb) run pointcloud /home/brent/repos/Open3D/examples/test_data/fragment.ply
Starting program: /home/brent/repos/Open3D/build/bin/examples/Visualizer pointcloud /home/brent/repos/Open3D/examples/test_data/fragment.ply
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Breakpoint 1, 0x000055555568ed52 in main ()
(gdb) where
#0 0x000055555568ed52 in main ()
Extension version: 1.1.3
VS Code version: Code 1.52.0 (940b5f4bb5fa47866a54529ed759d95d09ee80be, 2020-12-10T22:43:50.597Z)
OS version: Linux x64 5.4.0-54-generic snap
Remote OS version: Linux x64 5.4.0-54-generic
System Info
|Item|Value| |---|---| |CPUs|AMD Ryzen Threadripper 3960X 24-Core Processor (48 x 2200)| |GPU Status|2d_canvas: unavailable_softwareflash_3d: disabled_software
flash_stage3d: disabled_software
flash_stage3d_baseline: disabled_software
gpu_compositing: disabled_software
multiple_raster_threads: enabled_on
oop_rasterization: disabled_off
opengl: disabled_off
protected_video_decode: disabled_off
rasterization: disabled_software
skia_renderer: enabled_on
video_decode: disabled_software
vulkan: disabled_off
webgl: unavailable_software
webgl2: unavailable_software| |Load (avg)|1, 1, 1| |Memory (System)|62.75GB (20.40GB free)| |Process Argv|--force-user-env --no-sandbox --unity-launch --no-sandbox --crash-reporter-id 205183f6-0566-4829-8349-b40996aca137| |Screen Reader|no| |VM|0%| |DESKTOP_SESSION|ubuntu| |XDG_CURRENT_DESKTOP|Unity| |XDG_SESSION_DESKTOP|ubuntu| |XDG_SESSION_TYPE|x11|
| Item | Value |
|---|---|
| Remote | Container open3d:1.0 (/quirky_archimedes) |
| OS | Linux x64 5.4.0-54-generic |
| CPUs | AMD Ryzen Threadripper 3960X 24-Core Processor (48 x 2200) |
| Memory (System) | 62.75GB (20.40GB free) |
| VM | 0% |
A/B Experiments
vsliv368cf:30146710
vsreu685:30147344
openlogontheside:30221877
python763:30178808
python383:30185418
vspor879:30202332
vspor708:30202333
vspor363:30204092
python504:30227505
vswsl492:30211401
wsl2prompt:30224612
pythonvsdeb440:30233463
unusedprompt:30224610
folderexplorercf:30224615
openfilemenucf:30224648
vsjup459cf:30229594
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the cppdbg launch configuration and the extension's handling of source breakpoints for the containerized Visualizer executable. Compare breakpoint behavior through VS Code with the working direct GDB session; done means source breakpoints remain bound and stop in the container-launched program.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp, vscode
- Domain
- devtools
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100