跨网段远程调试vs_使用 VS 2019 跨平台编写和调试 Linux C/C++程序

本文介绍如何在Ubuntu16.04系统中安装并配置必要的开发环境,包括g++、gdb、gdbserver及openssh-server等工具,并通过VS2019进行远程调试。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Linux下环境配置

Ubuntu16.04下安装环境和SSH

g++用来编译,gdb gdbserver用来调试,openssh-server负责远程登陆

sudo apt-get install openssh-server g++ gdb gdbserver

修改ssh登录的配置,即/etc/ssh/sshd_config文件,修改为允许root登录,可以执行命令(如果只用普通用户登陆可以不用修改)

sudo vim /etc/ssh/sshd_config

注意:这里的sudo前缀不可少,否则接下来的修改无法保存。进入vim编辑,用方向键向下滚动找到PermitRootLogin这项,改为 PermitRootLogin yes

889e9b1d93788afe74e8b53c75156f18.png

重启ssh服务来让修改生效

sudo service ssh restart

另外要注意如果是虚拟机Linux,要设置网络为桥接模式以确保Linux拥有一个独立的IP地址,这是远程登陆不可少的。

如果不会请参照一下其他关于虚拟机网络设置的文章。


VS2019的安装选项要选中Linux平台

8ed0715aa24ae210c9a765f56e16a6f4.png

在新建项目中选中控制台应用

38464d4493d67298ea6381642b646b88.png

创建完成后自动生成如下

bdee455c75794e6c4e25610d973e4bc9.png

在工具-选项-跨平台中添加远程Linux

7d1f97be650588bbcf09c59c7203e973.png

点击添加按钮后

bf6f10cb4b72e6f50b0449add9ee4155.png

主机名输入要登陆的Linux IP,再输入用户名和密码

32bf352185621b4e43f4b6d1894270a7.png

等待文件同步后,添加成功。

787011bdcaff5f0dd65f4cc27de836fb.png

此时运行按钮上已经有我们所登陆的IP地址

d0b0f357417584c87403ce57d4dd2563.png

在生成的代码中添加一句getchar()来方便观察控制台输出信息

#include <cstdio>

int main()
{
    printf("hello from ConsoleApplication1!n");
    getchar();
    return 0;
}

点击运行

852eb53451ccb64d6f6eebce8de1bc0c.png

控制台窗口已经打印输出信息,如果没加阻塞语句(getchar),程序执行结束窗口一闪而过,就看不到程序实时的调试打印信息。

不加阻塞的话也可以在 调试->Linux控制台 重新打开。

如果要开发的是库文件文件 可以在项目->属性中修改配置类型

7db43906120f222bbca1102041ac9901.png

链接库文件

在实际开发中可能会需要调用各种库文件,以pthread为例

在 项目->(项目名)属性->链接器->输入->库依赖项中添加

bc81c2cd8e9cbd19eece5e999175b7f0.png

直接输入库名,如果有多个库以分号 ”;“ 分割。

c5bbfe0fe3b84fb3e35728f28bcecdba.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值