microsoft / microsoft/vscode-cpptools

Launch mode with gdbserver running ignores auto-solib-add

Aperta
#13,333 3 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

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

Descrizione

Environment
  • OS and version: 22.04 WSL Ubuntu
  • VS Code: 1.97.2
  • C/C++ extension: 1.23.6
  • OS and version of remote machine (if applicable): U
  • GDB / LLDB version: 16.2
Bug Summary and Steps to Reproduce

Bug Summary:

We launch a binary inside a Docker container. The docker container exposes in port 1234 a GDBServer 16.2.

I realized that the debugger session ignores the .gdbinit, even if I try to force sourcing it from hte setupCommands. It seems that it parses the file, but it does not apply the changes at all.

Example:

  • In current workspace folder, a .gdbinit
set solib-search-path /home/borjamf/workspace/whatever/build/whatever/opt/lib
set auto-load safe-path /
set print pretty on
set print object on
set index-cache enabled on
set auto-solib-add off

First it just starts without any consideration to the file: (the logs shows that) but afterwards it excutes the setupCommands properly:

  • it complains about the autoload path first... however it's /
  • sysroot is properly setup
  • source the .gdbinit
  • But the sentences are being ignored somehow.

If we check:

-exec show auto-solib-add

it returns on, however if should pick off.

Debugger Configurations
{
    {
        "name": "Launch Debug GDBServer",
        "type": "cppdbg",
        "request": "launch",
        "program": "${workspaceFolder}/build/whatever/whatever.bin",
        "stopAtEntry": false,
        "externalConsole": true,
        "logging": {
          "engineLogging": true,
          "traceResponse": true,
          "trace": true
        },
        "postDebugTask": "myPostDebugTask",
        "targetArchitecture": "x64",
        "cwd": "${workspaceFolder}",
        "preLaunchTask": "MyPrelaunchTask",
        "miDebuggerServerAddress": "localhost:1234",
        "miDebuggerPath": "${workspaceFolder}/gdb-16.2",
        "MIMode": "gdb",
        "setupCommands": [
          {
            "description": "Enable pretty-printing for gdb",
            "text": "-enable-pretty-printing",
            "ignoreFailures": false
          },
          {
            "description": "ignore SIGUSR1 signal",
            "text": "-gdb-set auto-load safe-path ${workspaceFolder}",
            "ignoreFailures": false
          },
          {
            "description": "ignore SIGUSR1 signal",
            "text": "source ${workspaceFolder}/.gdbinit",
            "ignoreFailures": false
          },
          {
            "description": "set sysroot",
            "text": "-gdb-set sysroot mySysroot",
            "ignoreFailures": false
          },
        ]
      },
}
Debugger Logs
> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (126) LaunchOptions{\"name\":\"Launch Debug GDBServer\",\"type\":\"cppdbg\",\"request\":\"launch\",\"program\":\"/home/borjamf/workspace/whatever/build/sim/whatever/sim/dispapp.bin\",\"stopAtEntry\":false,\"externalConsole\":true,\"logging\":{\"engineLogging\":true,\"traceResponse\":true,\"trace\":true},\"postDebugTask\":\"postDebugLaunch - Stop Simulators\",\"targetArchitecture\":\"x64\",\"cwd\":\"/home/borjamf/workspace/whatever\",\"preLaunchTask\":\"myPrelaunchtask\",\"miDebuggerServerAddress\":\"localhost:1234\",\"miDebuggerPath\":\"/home/borjamf/workspace/whatever/gdb-16.2\",\"environment\":[{\"name\":\"LD_LIBRARY_PATH\",\"value\":\"/opt/lib:/opt/forced_lib\"}],\"MIMode\":\"gdb\",\"setupCommands\":[{\"description\":\"Enable pretty-printing for gdb\",\"text\":\"-enable-pretty-printing\",\"ignoreFailures\":false},{\"description\":\"ignore SIGUSR1 signal\",\"text\":\"-gdb-set auto-load safe-path /\",\"ignoreFailures\":false},{\"description\":\"\",\"text\":\"add-auto-load-safe-path /home/borjamf/workspace/whatever/.gdbinit\",\"ignoreFailures\":false},{\"description\":\"ignore SIGUSR1 signal\",\"text\":\"source /home/borjamf/workspace/whatever/.gdbinit\",\"ignoreFailures\":false},{\"description\":\"set sysroot\",\"text\":\"-gdb-set sysroot mySysroots\",\"ignoreFailures\":false}],\"__configurationTarget\":6,\"configSource\":\"workspaceFolder\",\"debugType\":\"debug\",\"__sessionId\":\"a9d06deb-a89f-4dea-812c-87b5b9478795\"}\n"},"seq":2}
1: (126) LaunchOptions{"name":"Launch Debug GDBServer","type":"cppdbg","request":"launch","program":"/home/borjamf/workspace/whatever/build/sim/whatever/sim/dispapp.bin","stopAtEntry":false,"externalConsole":true,"logging":{"engineLogging":true,"traceResponse":true,"trace":true},"postDebugTask":"postDebugLaunch - Stop Simulators","targetArchitecture":"x64","cwd":"/home/borjamf/workspace/whatever","preLaunchTask":"myPrelaunchtask","miDebuggerServerAddress":"localhost:1234","miDebuggerPath":"/home/borjamf/workspace/whatever/gdb-16.2","environment":[{"name":"LD_LIBRARY_PATH","value":"/opt/lib:/opt/forced_lib"}],"MIMode":"gdb","setupCommands":[{"description":"Enable pretty-printing for gdb","text":"-enable-pretty-printing","ignoreFailures":false},{"description":"ignore SIGUSR1 signal","text":"-gdb-set auto-load safe-path /","ignoreFailures":false},{"description":"","text":"add-auto-load-safe-path /home/borjamf/workspace/whatever/.gdbinit","ignoreFailures":false},{"description":"ignore SIGUSR1 signal","text":"source /home/borjamf/workspace/whatever/.gdbinit","ignoreFailures":false},{"description":"set sysroot","text":"-gdb-set sysroot mySysroots","ignoreFailures":false}],"__configurationTarget":6,"configSource":"workspaceFolder","debugType":"debug","__sessionId":"a9d06deb-a89f-4dea-812c-87b5b9478795"}
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (182) Starting: \"/home/borjamf/workspace/whatever/gdb-16.2\" --interpreter=mi -x \"/home/borjamf/workspace/whatever/.gdbinit\"\n"},"seq":4}
1: (182) Starting: "/home/borjamf/workspace/whatever/gdb-16.2" --interpreter=mi -x "/home/borjamf/workspace/whatever/.gdbinit"
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (262) DebuggerPid=32593\n"},"seq":6}
1: (262) DebuggerPid=32593
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (427) ->=thread-group-added,id=\"i1\"\n"},"seq":8}
1: (427) ->=thread-group-added,id="i1"
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (432) ->~\"GNU gdb (GDB) 16.2\\n\"\n"},"seq":10}
1: (432) ->~"GNU gdb (GDB) 16.2\n"
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (435) ->~\"Copyright (C) 2024 Free Software Foundation, Inc.\\n\"\n"},"seq":12}
1: (435) ->~"Copyright (C) 2024 Free Software Foundation, Inc.\n"
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (435) ->~\"License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>\\nThis is free software: you are free to change and redistribute it.\\nThere is NO WARRANTY, to the extent permitted by law.\"\n"},"seq":14}
1: (435) ->~"License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>\nThis is free software: you are free to change and redistribute it.\nThere is NO WARRANTY, to the extent permitted by law."
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (435) ->~\"\\nType \\\"\"\n"},"seq":16}
1: (435) ->~"\nType \""
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (436) ->~\"show copying\\\" and \\\"show warranty\\\" for details.\\n\"\n"},"seq":18}
1: (436) ->~"show copying\" and \"show warranty\" for details.\n"
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (436) ->~\"This GDB was configured as \\\"x86_64-linux-gnu\\\".\\n\"\n"},"seq":20}
1: (436) ->~"This GDB was configured as \"x86_64-linux-gnu\".\n"
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (436) ->~\"Type \\\"show configuration\\\" for configuration details.\\n\"\n"},"seq":22}
1: (436) ->~"Type \"show configuration\" for configuration details.\n"
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (436) ->~\"For bug reporting instructions, please see:\\n\"\n"},"seq":24}
1: (436) ->~"For bug reporting instructions, please see:\n"
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (437) ->~\"<https://www.gnu.org/software/gdb/bugs/>.\\n\"\n"},"seq":26}
1: (437) ->~"<https://www.gnu.org/software/gdb/bugs/>.\n"
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (438) ->~\"Find the GDB manual and other documentation resources online at:\\n    <\"\n"},"seq":28}
1: (438) ->~"Find the GDB manual and other documentation resources online at:\n    <"
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (438) ->~\"http://www.gnu.org/software/gdb/documentation/>.\\n\\n\"\n"},"seq":30}
1: (438) ->~"http://www.gnu.org/software/gdb/documentation/>.\n\n"
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (438) ->~\"For help, type \\\"help\\\".\\n\"\n"},"seq":32}
1: (438) ->~"For help, type \"help\".\n"
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (439) ->~\"Type \\\"apropos word\\\" to search for commands related to \\\"word\\\".\\n\"\n"},"seq":34}
1: (439) ->~"Type \"apropos word\" to search for commands related to \"word\".\n"
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (440) ->&\"warning: File \\\"/home/borjamf/workspace/whatever/.gdbinit\\\" auto-loading has been declined by your `auto-load safe-path' set to \\\"$debugdir:$datadir/auto-load\\\".\\n\"\n"},"seq":36}
1: (440) ->&"warning: File \"/home/borjamf/workspace/whatever/.gdbinit\" auto-loading has been declined by your `auto-load safe-path' set to \"$debugdir:$datadir/auto-load\".\n"
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (440) ->~\"To enable execution of this file add\\n\\t\"\n"},"seq":38}
1: (440) ->~"To enable execution of this file add\n\t"
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (440) ->~\"add-auto-load-safe-path /home/borjamf/workspace/whatever/.gdbinit\\nline to your configuration file \\\"\"\n"},"seq":40}
1: (440) ->~"add-auto-load-safe-path /home/borjamf/workspace/whatever/.gdbinit\nline to your configuration file \""
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (440) ->~\"/home/borjamf/.config/gdb/gdbinit\\\".\\nTo completely disable this security protection add\\n\\t\"\n"},"seq":42}
1: (440) ->~"/home/borjamf/.config/gdb/gdbinit\".\nTo completely disable this security protection add\n\t"
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (440) ->~\"set auto-load safe-path /\\nline to your configuration file \\\"\"\n"},"seq":44}
1: (440) ->~"set auto-load safe-path /\nline to your configuration file \""
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (441) ->~\"/home/borjamf/.config/gdb/gdbinit\\\".\\nFor more information about this security protection see the\\n\\\"Auto-loading safe path\\\" section in the GDB manual.  E.g., run from the shell:\\n\\tinfo \\\"(gdb)Auto-loading safe path\\\"\\n\"\n"},"seq":46}
1: (441) ->~"/home/borjamf/.config/gdb/gdbinit\".\nFor more information about this security protection see the\n\"Auto-loading safe path\" section in the GDB manual.  E.g., run from the shell:\n\tinfo \"(gdb)Auto-loading safe path\"\n"
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (441) ->=cmd-param-changed,param=\"auto-load safe-path\",value=\"/\"\n"},"seq":48}
1: (441) ->=cmd-param-changed,param="auto-load safe-path",value="/"
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (441) ->=cmd-param-changed,param=\"solib-search-path\",value=\"/home/borjamf/workspace/whatever/build/sim/whatever/system/opt/lib:/home/borjamf/workspace/whatever/build/sim/whatever/system/whatever/opt/forced_lib\"\n"},"seq":50}
1: (441) ->=cmd-param-changed,param="solib-search-path",value="/home/borjamf/workspace/whatever/build/sim/whatever/system/whatever/opt/lib:/home/borjamf/workspace/whatever/build/sim/whatever/system/whatever/opt/forced_lib"
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (441) ->=cmd-param-changed,param=\"print pretty\",value=\"on\"\n"},"seq":52}
1: (441) ->=cmd-param-changed,param="print pretty",value="on"
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (442) ->=cmd-param-changed,param=\"print object\",value=\"on\"\n"},"seq":54}
1: (442) ->=cmd-param-changed,param="print object",value="on"
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (442) ->=cmd-param-changed,param=\"index-cache enabled\",value=\"on\"\n"},"seq":56}
1: (442) ->=cmd-param-changed,param="index-cache enabled",value="on"
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (442) ->=cmd-param-changed,param=\"auto-solib-add\",value=\"off\"\n"},"seq":58}
1: (442) ->=cmd-param-changed,param="auto-solib-add",value="off"
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (443) ->(gdb)\n"},"seq":60}
1: (443) ->(gdb)
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (446) <-1001-gdb-set mi-async on\n"},"seq":62}
1: (446) <-1001-gdb-set mi-async on
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (448) ->1001^done\n"},"seq":64}
1: (448) ->1001^done
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (450) 1001: elapsed time 4\n"},"seq":66}
1: (450) 1001: elapsed time 4
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (458) <-1002-enable-pretty-printing\n"},"seq":68}
1: (458) <-1002-enable-pretty-printing
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (458) ->(gdb)\n"},"seq":70}
1: (458) ->(gdb)
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (459) ->1002^done\n"},"seq":72}
1: (459) ->1002^done
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (459) ->(gdb)\n"},"seq":74}
1: (459) ->(gdb)
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (459) 1002: elapsed time 1\n"},"seq":76}
1: (459) 1002: elapsed time 1
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (459) <-1003-gdb-set auto-load safe-path /\n"},"seq":78}
1: (459) <-1003-gdb-set auto-load safe-path /
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (460) ->1003^done\n"},"seq":80}
1: (460) ->1003^done
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (460) ->(gdb)\n"},"seq":82}
1: (460) ->(gdb)
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (461) 1003: elapsed time 1\n"},"seq":84}
1: (461) 1003: elapsed time 1
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (462) <-1004-interpreter-exec console \"add-auto-load-safe-path /home/borjamf/workspace/whatever/.gdbinit\"\n"},"seq":86}
1: (462) <-1004-interpreter-exec console "add-auto-load-safe-path /home/borjamf/workspace/whatever/.gdbinit"
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (462) ->1004^done\n"},"seq":88}
1: (462) ->1004^done
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (463) ->(gdb)\n"},"seq":90}
1: (463) ->(gdb)
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (463) 1004: elapsed time 0\n"},"seq":92}
1: (463) 1004: elapsed time 0
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (464) <-1005-interpreter-exec console \"source /home/borjamf/workspace/whatever/.gdbinit\"\n"},"seq":94}
1: (464) <-1005-interpreter-exec console "source /home/borjamf/workspace/whatever/.gdbinit"
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (464) ->=cmd-param-changed,param=\"auto-load safe-path\",value=\"/\"\n"},"seq":96}
1: (464) ->=cmd-param-changed,param="auto-load safe-path",value="/"
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (465) ->1005^done\n"},"seq":98}
1: (465) ->1005^done
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (465) ->(gdb)\n"},"seq":100}
1: (465) ->(gdb)
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (465) 1005: elapsed time 1\n"},"seq":102}
1: (465) 1005: elapsed time 1
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (465) <-1006-gdb-set sysroot mySysroots\n"},"seq":104}
1: (465) <-1006-gdb-set sysroot mySysroots
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (465) ->1006^done\n"},"seq":106}
1: (465) ->1006^done
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (465) ->(gdb)\n"},"seq":108}
1: (465) ->(gdb)
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (466) 1006: elapsed time 0\n"},"seq":110}
1: (466) 1006: elapsed time 0
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (466) <-1007-interpreter-exec console \"set pagination off\"\n"},"seq":112}
1: (466) <-1007-interpreter-exec console "set pagination off"
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (466) ->=cmd-param-changed,param=\"pagination\",value=\"off\"\n"},"seq":114}
1: (466) ->=cmd-param-changed,param="pagination",value="off"
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (466) ->1007^done\n"},"seq":116}
1: (466) ->1007^done
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (466) ->(gdb)\n"},"seq":118}
1: (466) ->(gdb)
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (467) 1007: elapsed time 0\n"},"seq":120}
1: (467) 1007: elapsed time 0
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (467) <-1008-gdb-set auto-solib-add on\n"},"seq":122}
1: (467) <-1008-gdb-set auto-solib-add on
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (467) ->1008^done\n"},"seq":124}
1: (467) ->1008^done
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (467) ->(gdb)\n"},"seq":126}
1: (467) ->(gdb)
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (467) 1008: elapsed time 0\n"},"seq":128}
1: (467) 1008: elapsed time 0
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (468) <-1009-gdb-set solib-search-path /home/borjamf/workspace/whatever/build/sim/whatever/sim/:\n"},"seq":130}
*1: (468) <-1009-gdb-set solib-search-path /home/borjamf/workspace/whatever/build/sim/whatever/sim/:*
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (468) ->1009^done\n"},"seq":132}
1: (468) ->1009^done
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (468) ->(gdb)\n"},"seq":134}
1: (468) ->(gdb)
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (468) 1009: elapsed time 0\n"},"seq":136}
1: (468) 1009: elapsed time 0
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (468) <-1010-environment-cd /home/borjamf/workspace/whatever\n"},"seq":138}
1: (468) <-1010-environment-cd /home/borjamf/workspace/whatever
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (469) ->1010^done\n"},"seq":140}
1: (469) ->1010^done
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (469) ->(gdb)\n"},"seq":142}
1: (469) ->(gdb)
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (469) 1010: elapsed time 0\n"},"seq":144}
1: (469) 1010: elapsed time 0
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (469) <-1011-file-exec-and-symbols /home/borjamf/workspace/whatever/build/sim/whatever/sim/whateverapp.bin\n"},"seq":146}
1: (469) <-1011-file-exec-and-symbols /home/borjamf/workspace/whatever/build/sim/whatever/sim/whateverapp.bin
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (19841) ->1011^done\n"},"seq":148}
1: (19841) ->1011^done
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (19842) ->(gdb)\n"},"seq":150}
1: (19842) ->(gdb)
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (19842) 1011: elapsed time 19372\n"},"seq":152}
1: (19842) 1011: elapsed time 19372
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (19843) <-1012-interpreter-exec console \"show architecture\"\n"},"seq":154}
1: (19843) <-1012-interpreter-exec console "show architecture"
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (19847) ->~\"The target architecture is set to \\\"auto\\\" (currently \\\"i386\\\").\\n\"\n"},"seq":156}
1: (19847) ->~"The target architecture is set to \"auto\" (currently \"i386\").\n"
linux.so.2",arch="i386"},state="stopped",core="11"}]
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (25767) ->(gdb)\n"},"seq":194}
1: (25767) ->(gdb)
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (25767) 1014: elapsed time 320\n"},"seq":196}
1: (25767) 1014: elapsed time 320
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (25767) 1015: elapsed time 178\n"},"seq":198}
1: (25767) 1015: elapsed time 178
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (25768) <-1016-interpreter-exec console \"set env LD_LIBRARY_PATH /opt/lib:/opt/forced_lib\"\n"},"seq":200}
1: (25768) <-1016-interpreter-exec console "set env LD_LIBRARY_PATH /opt/lib:/opt/forced_lib"
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (25769) ->1016^done\n"},"seq":202}
1: (25769) ->1016^done
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (25770) ->(gdb)\n"},"seq":204}
1: (25770) ->(gdb)
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (25779) 1016: elapsed time 11\n"},"seq":206}
1: (25779) 1016: elapsed time 11
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (25785) Send Event AD7EngineCreateEvent\n"},"seq":208}
1: (25785) Send Event AD7EngineCreateEvent
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (25788) Send Event AD7ProgramCreateEvent\n"},"seq":210}
1: (25788) Send Event AD7ProgramCreateEvent
--> E (output): {"type":"event","event":"output","body":{"category":"telemetry","output":"VS/Diagnostics/Debugger/Launch","data":{"VS.Diagnostics.Debugger.ImplementationName":"Microsoft.MIDebugEngine","VS.Diagnostics.Debugger.EngineVersion":"17.12.21003.1","VS.Diagnostics.Debugger.HostVersion":"17.12.21003.1","VS.Diagnostics.Debugger.AdapterId":"cppdbg","VS.Diagnostics.Debugger.Launch.Duration":25678,"VS.Diagnostics.Debugger.MIMode":"gdb","VS.Diagnostics.Debugger.FrameworkVersion":"8.0.824.36612"}},"seq":212}
-exec show solib-search-path
The search path for loading non-absolute shared library symbol files is /home/borjamf/workspace/whatever/build/whatever:.
Other Extensions

No response

Additional Information

No response

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 con la configurazione di avvio cppdbg, l’invocazione GDB generata e il .gdbinit dell’area di lavoro mostrato nei log. Riproduci la sessione Docker gdbserver e traccia l’ordine di setupCommands e la gestione di auto-load safe-path; il lavoro è completato quando auto-solib-add è disattivato dopo l’avvio e vengono applicate le impostazioni di .gdbinit.

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

Valutazione

Stack tecnologico
cpp, docker, vscode
Ambito
devtools, tooling
Tipo di issue
Bug
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.