VS2017创建Linux项目实现远程GDB调试
vs2017新增linux for C++的模块,尝试安装了一下环境。
首先,安装VS2017,安装时注意选择以下模块:

安装完成后,需要配置Linux服务端的部分,我的配置过程如下:
第一步,安装VMware虚拟机,此过程不再细细描述了。
第二步,安装Linux操作系统。我下载的是CentOS的min版本的安装包,里面只有基础的功能(不包括UI服务器部分)。需要注意的是网卡默认是关闭的,在安装时注意开启下,否则还得另外花时间去改配置文件。
第三步,在Linux端部署需要的服务(安装时注意以root用户登录系统)。主要包括如下几个部分:
1.安装Openssh:
yum install openssh-server
2.安装g++:
yum install gcc-c++
3.安装gdb+gdbserver
此处需要下载gdb安装包 gdb-7.12.tar.gz,地址: http://ftp.gnu.org/gnu/gdb/
下载完成后,将压缩文件上传到Linux主机目录/home/tbcs/gdb
然后登录Linux主机,打开安装包所在目录,解压缩:
tar -zxvf gdb-7.12.tar.gz
解压后会出现 gdb-7.12 文件目录,进入此目录,执行如下命令:
./configure
然后执行make命令:
make
然后进行安装:
make install
完成后,在当前目录(/home/tbcs/gdb/gdb-7.12)下找到gdb子目录,进入子目录后,将生成的gdb程序拷贝到/usr/bin目录下:
cp /home/tbcs/gdb/gdb-7.12/gdb/gdb /usr/bin
在gdb子目录下还会有一个gdbserver目录生成,进入该目录,将生成的gdbserver程序也拷贝到/usr/bin目录下:
cp /home/tbcs/gdb/gdb-7.12/gdb/gdbserver/gdbserver /usr/bin
至此,Linux端的服务安装完成。
第四步,建立Linux项目:

然后在生成的mian.cpp文件中打上断点,进行调试:

首次调试会需要设置Linux的连接,按照配置填上Linux服务端的IP地址及端口号,并输入用户名密码后就可以进行调试了,需要注意的是CentOS系统Min版本是不支持ifconfig命令的,查看IP可以用 ip addr 命令来查看。
最后,大功告成!

VS2017创建Linux项目实现远程GDB调试的更多相关文章
- vs2017创建netcore项目,部署到linux的docker容器里面
开发环境 1.win10下面安装VS2017 2.linux安装Ubuntu16.4系统 步骤: 第一步:linux安装docker容器 docker中文文档,里面有详解的docker介绍及讲解,建议 ...
- Linux基础 30分钟GDB调试快速突破
引言 Linus心灵鸡汤 在*nix开发中有道卡叫gdb调试,不管你怎么搞. 它依然在那丝毫不会松动.今天致敬一个 活着的传奇 Linus Torvalds Unix 始于上个世纪60年代,在70年代 ...
- linux下如何使用gdb调试
gdb是linux下非常好用的一个调试工具,虽然它是命令行模式的调试工具,但是它的功能强大到你无法想象,这里简单介绍下gdb下常用的命令. 首先编译生成可执行文件(这里的test.c是一个简单的求前n ...
- vs2017 编译linux项目
官方文档1: https://blogs.msdn.microsoft.com/vcblog/2017/04/11/linux-development-with-c-in-visual-studio/ ...
- VSCode 创建flutter项目和运行、调试、热更新项目
1.创建--在終端輸入命令 flutter create 项目名 2.普通运行--在终端输入命令 flutter run 3.打开你的虚拟机或者是连上手机等待页面加载 4.普通運行情況下修改代碼后想要 ...
- linux下如何用GDB调试c++程序
转:http://blog.csdn.net/wfdtxz/article/details/7368357 GDB 是GNU开源组织发布的一个强大的UNIX下的程序调试工具.或许,各位比较喜欢那种图形 ...
- VS2017创建类库项目后添加不了WPF资源字典
第一步: 先找到你需要添加的库类工程文件,位置如下: 第二步: 使用记事本文件打开,找到图片的位置,把三行代码粘贴进去,保存文件.重新打开项目: 三行代码如下: <ProjectTypeGuid ...
- vs2017搭建linux c++开发环境
最近一直在阅读ovs的源码,看到用户态代码的时候,需要对用户态的代码进行调试,一开始想直接使用linux中的GDB进行调试,但是ovs的工程太过于复杂,从网上找了些文章,发现vs2017能够支持lin ...
- 在qemu环境中用gdb调试Linux内核
简介 对用户态进程,利用gdb调试代码是很方便的手段.而对于内核态的问题,可以利用crash等工具基于coredump文件进行调试.其实我们也可以利用一些手段对Linux内核代码进行gdb调试,qem ...
- Linux下GDB调试简单示例
这里介绍对文件first.c的基本GDB调试操作,只有部分命令,只是一个示例,运行环境为装有gcc编译器和gdb调试器的Linux环境,基本GDB调试命令如下表: 命令 ...
随机推荐
- Ubuntu 桌面系统升级
背景 之前在学习 ROS2 时,安装 ros-humble-desktop 出现依赖错误:无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系. 依赖错误 该问题需要升级 Ub ...
- Django models.py 表的参数选择
from django.db import models # Create your models here. class Department(models.Model): # 以后可以新增, ...
- ARC157E XXYX Binary Tree 题解
首先,条件可以抽象为 Y 不能相连,然后: 钦定根为 Y,YX 的个数加上 \(2\): 钦定某一个叶子节点为 Y,XY 的个数加上 \(1\): 钦定某一个非叶子非根节点为 Y,YX 的个数加上 \ ...
- 第一天 python环境变量安装(2.7)
一.什么是python Python 是一个高层次的结合了解释性.编译性.互动性和面向对象的脚本语言. Python 的设计简单,易学,免费,开源,面向对象,可拓展性 Python 是一种解释型语言: ...
- 记录一次Python环境安装出现的问题(已安装java)
之前是在其他电脑上安装python环境,没有问题. 换了一台电脑开始安装(注:已配置java环境) 安装包准备好 ( 这里使用的是python 3.6.5(64位) ,下载地址选择官网) 教程百度都有 ...
- 2021.09 ccf csp 第四题 收集卡牌
2021.09 ccf csp 第四题 收集卡牌 思路 这题如果直接计算,因为不同的分类种数太多,枚举所有的分类情况是一个几乎不可能的复杂任务. 但不同摸牌次数,不同已摸出牌种类的子问题的答案之间,具 ...
- 你到底懂不懂JavaScript?来做做这12道面试题试试!
携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第 21 天,点击查看活动详情 JavaScript 是每一个前端开发者都应该掌握的基础技术,但是很多时候,你可能并不完全懂 Jav ...
- jQuery-强大的jQuery选择器 (详解)
jq除常用的选择写法之外的更多方法记录. 原文:jQuery-强大的jQuery选择器 (详解)[转] 1. 基础选择器 Basics 名称 说明 举例 #id 根据元素Id选择 $("di ...
- win10安装双版本mysql的方法
因为app作业缘故,之前装的mysql8.0版本无法兼容因此打算再装一个5.7版本的mysql,历经3,4天终于成功,现记录下这血一般的教训 首先官网下再mysql5.7.37的安装包 下载地址htt ...
- TCP和UDP协议之间的区别与原理
一.TCP和UDP协议之间的区别 TCP是基于连接的,而UDP是基于非连接的. TCP传输数据稳定可靠,适用于对网络通讯质量要求较高的场景,需要准确无误的传输给对方,比如,传输文件,发送邮件,浏览网页 ...