raix / vscode-perl-debug

LOOKING FOR MAINTAINERS. Perl debugger extension for visual studio code
MIT License
63 stars 36 forks source link

How to do remote debugging directly in VSCode #130

Closed yongxin-xu closed 4 years ago

yongxin-xu commented 4 years ago

Hi! I am running the vscode-perl-debug to debug on my remote linux machine.

But I found that I can only debug by entering instructions like n or s in the DEBUG CONSOLE, instead of setting breakpoints and running directly in the VS Code. Besides that, there was no information showed in the VARIABLES and CALL STACK window, and the variable I manually added in the WATCH window showed not available.

Is there a problem with my configuration file, or the vscode-perl-debug does not support direct debugging in VS Code?

My launch.json is just set as default.

{
    "type": "perl",
    "request": "launch",
    "name": "Perl-Debug remote",
    "console": "remote",
    "program": "${workspaceFolder}/${relativeFile}",
    "root": "${workspaceRoot}/",
    "stopOnEntry": true,
    "port": 5000,
    "sessions": "single"
}

Thanks in advance, this debugging tool really helps me a lot!

ganezdragon commented 4 years ago

@yongxin-xu what's your remote machine's OS version, and perl version ?

yongxin-xu commented 4 years ago

@ganezdragon Hi, here's my remote machines' configurations. In short, CentOS 7.2 with kernel version 3.10.107, and the perl version is 5.16.3.

root:~/ # uname -a                                                                             [19:41:26]
Linux centos 3.10.107-1-tlinux2_kvm_guest-0049 #1 SMP Tue Jul 30 23:46:29 CST 2019 x86_64 x86_64 x86_64 GNU/Linux
root:~/ # cat /etc/redhat-release                                                              [19:41:50]
CentOS Linux release 7.2 (Final)
root:~/ # perl -v                                                                              [19:42:02]

This is perl 5, version 16, subversion 3 (v5.16.3) built for x86_64-linux-thread-multi
(with 29 registered patches, see perl -V for more detail)

Copyright 1987-2012, Larry Wall
ganezdragon commented 4 years ago

@yongxin-xu , wait, have you installed PadWalker as mentioned in the Readme? We need PadWalker for variables to show up in the debug window.

yongxin-xu commented 4 years ago

@ganezdragon , I've just installed PadWalker and that doesn't help. Probably there's some limitations, or because my remote machine is actually a docker machine. Anyway, now I'm used to sending commands to debug. Thanks for the help.