能否将Visual Studio 2017 Linux调试器连接至另一台笔记本的Ubuntu及操作方法
当然可以!VS2017的Linux开发组件完全支持连接局域网内的Ubuntu笔记本进行程序调试,操作逻辑和你之前用Azure虚拟机的流程大同小异,只是需要针对局域网环境做些基础配置。下面是一步步的实操指南:
具体操作步骤
一、先在Ubuntu机器上准备依赖环境
- 打开终端,先安装调试和编译必需的工具包:
sudo apt-get install gdb openssh-server build-essential
这几个包分别负责调试、提供SSH连接服务、编译代码,是VS远程调试的基础。 - 启动并设置SSH服务开机自启:
sudo systemctl start sshdsudo systemctl enable sshd - 记下Ubuntu的局域网IP地址:终端输入
ip addr,找到类似inet 192.168.x.x的条目,这个IP就是VS要连接的目标地址。
二、在VS2017中配置Ubuntu连接
- 打开你的Linux项目(如果还没有,新建一个「Visual C++ -> Linux项目」即可)。
- 点击顶部菜单栏的工具 -> 选项,找到「跨平台」->「连接管理器」。
- 点击「添加」按钮,在弹出的配置窗口里填写:
- 主机名:刚才记下的Ubuntu局域网IP
- 端口:默认填22(如果Ubuntu修改过SSH端口就填对应值)
- 用户名:你的Ubuntu系统登录用户名
- 认证类型:新手选「密码」最方便,输入Ubuntu用户的登录密码
- 点击「连接」,VS会自动测试连接状态,成功后会显示「已连接」的标识。
三、调试运行程序
- 右键项目选择「属性」,确认「常规」选项卡下的「远程生成机器」已经选中刚才配置的Ubuntu连接。
- 直接点击VS顶部的绿色调试按钮,VS会自动把本地代码同步到Ubuntu的用户目录下,完成编译后启动gdb调试,整个流程和你用Azure虚拟机时完全一致!
几个常见问题的排查点
- 连接失败先检查两台机器是否在同一个局域网(比如连同一个WiFi),Ubuntu的防火墙有没有放行22端口,临时关闭防火墙可以试试:
sudo ufw disable - 如果出现权限报错,确保Ubuntu用户对VS同步代码的目录(默认在
~/Projects下)有读写权限
内容的提问来源于stack exchange,提问作者Debjit239
相关产品推荐
相关产品推荐

