Visual Studio 2017 + VisualGDB 调试Linux C++程序

2023-05-16

Visual Stuido版本:
在这里插入图片描述

VisualGDB版本:
在这里插入图片描述


经过测试,VisualGBD 5.1暂不支持VS 2017,5.3及以上版本在VisualGDB Project Properties - IntelliSense Setting 里,无法切换 IntelliSense engine,导致不能使用VAssistX进行智能提示,也有可能是设置不对,不过使用5.2r8版本完美解决。

以防万一,先在Linux服务器上对工程进行编译,保证能通过编译并运行。然后使用Visual Studio SSH连接远程,将代码下载到windows的指定目录,本地修改代码后,编译时自动上传代码并生成可执行文件。这一部分在构建项目时指定就可以了,无需手动操作。

安装Visual Studio 和 VisualGDB 过程就不细述了。


步骤
一、设置Visual Studio SSH连接信息
打开Visual Studio - 工具 - 选项 - 跨平台 - 连接管理器 - 添加 远程连接信息
在这里插入图片描述

二、新建项目,选择Linux Project Wizard
在这里插入图片描述
三、选择导入工程项目
在这里插入图片描述
四、选择远程连接信息,这里会去连接远程
在这里插入图片描述
在这里插入图片描述
五、设置远程工程目录和本机要生成sln的目录
在这里插入图片描述
六、设置文件共享模式,我这里选择的是在build工程时上传修改过的文件到远程
在这里插入图片描述
七、点击next,会从远程下载文件到本机
在这里插入图片描述
八、设置build命令参数及调试执行文件信息
在这里插入图片描述

九、点击finish后应该就会创建出sln工程
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
十、这个时候可以先删掉远程上的执行文件,在解决方案中点击 生成,输出窗口中可以看到编译信息,在远程上能编译成功的,这里应该也可以直接生成执行文件。这里的执行文件是直接生成在远程机器上。
在这里插入图片描述
十一、之前指定过调试执行文件的话,这个时候可以直接F5进行调试,而且可以直接在本机修改代码进行测试,在build的时候会自动上传到远程,完美!!!
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Visual Studio 2017 + VisualGDB 调试Linux C++程序 的相关文章

  • 让 MongoDB 在 Linux 上监听远程连接

    我已在 Windows 本地计算机上 上成功安装 MongoDB 作为服务 但现在我想将 MongoDb 移动到单独的服务器 所以我将 tarball 解压到网络上的虚拟服务器 运行 Linux 当我从本地计算机使用 PuTTY 连接到服务
  • 在 /dev/input/eventX 中写入事件需要哪些命令?

    我正在开发一个android需要将触摸事件发送到 dev input eventX 的应用程序 我知道C执行此类操作的代码结构如下 struct input event struct timeval time unsigned short
  • 在主目录中安装库

    在 Linux Ubuntu 中 我尝试运行一个工具 但它显示错误 库丢失 我无权在系统中安装任何内容 或者根本无法从我的用户帐户执行 sudo 是否可以在我的主目录 没有 sudo 中安装缺少的库 在我的例子中为 libstdc so 6
  • 信号处理程序有单独的堆栈吗?

    信号处理程序是否有单独的堆栈 就像每个线程都有单独的堆栈一样 这是在 Linux C 环境中 来自 Linux 手册页signal 7 http kernel org doc man pages online pages man7 sign
  • 如何更改 Ubuntu 14.04 上的 php-cli 版本?

    我是 Linux 新手 在篡改时破坏了一些 php 设置 如果我执行一个包含以下内容的 php 脚本 phpinfo 它显示 php 版本为 5 6 但通过命令行 如果我运行php v它返回 7 0 版本 我想让两个版本匹配 我怎样才能修复
  • xsel -o 对于 OS X 等效项

    是否有一个等效的解决方案可以在 OS X 中抓取选定的文本 就像适用于 Linux 的 xsel o 一样 只需要当前的选择 这样我就可以在 shell 脚本中使用文本 干杯 埃里克 你也许可以安装xsel在 MacOS 上 更新 根据 A
  • ansible 重新启动 2.1.1.0 失败

    我一直在尝试创建一个非常简单的 Ansible 剧本 它将重新启动服务器并等待它回来 我过去在 Ansible 1 9 上有一个可以运行的 但我最近升级到 2 1 1 0 并且失败了 我正在重新启动的主机名为 idm IP 为 192 16
  • Locale.getDefault() 始终返回 en

    unix 机器上的服务器始终使用 en 作为默认区域设置 以下是区域设置输出 LANG en US LC CTYPE C LC NUMERIC C LC TIME C LC COLLATE C LC MONETARY C LC MESSAG
  • 拆分字符串以仅获取前 5 个字符

    我想去那个地点 var log src ap kernelmodule 10 001 100 但看起来我的代码必须处理 ap kernelmodule 10 002 100 ap kernelmodule 10 003 101 等 我想使用
  • awk 子串单个字符

    这是columns txt aaa bbb 3 ccc ddd 2 eee fff 1 3 3 g 3 hhh i jjj 3 kkk ll 3 mm nn oo 3 我可以找到第二列以 b 开头的行 awk if substr 2 1 1
  • 如何通过替换为空页映射来取消映射 mmap 文件

    Linux 用户空间有没有办法用空页面 映射自 dev null 或者可能是一个空页面 重复映射到从文件映射的页面的顶部 对于上下文 我想找到这个 JDK bug 的修复 https bugs openjdk java net browse
  • 使用 grep 查找包含所有搜索字符串的行

    我有一个文件 其中包含很多与此类似的行 id 2796 some model Profile message type MODEL SAVE fields account 14 address null modification times
  • 如何使用 xterm.js 创建基于 Web 的终端以 ssh 进入本地网络上的系统

    我偶然发现了这个很棒的图书馆xterm js https xtermjs org 这也是 Visual Studio Code 终端的基础 我有一个非常普遍的问题 我想通过基于网络的终端 不在网络中 可能位于 aws 服务器上 访问本地网络
  • 从 csv 文件中删除特定列,保持输出上的相同结构[重复]

    这个问题在这里已经有答案了 我想删除第 3 列并在输出文件中保留相同的结构 输入文件 12 10 10 10 10 1 12 23 1 45 6 7 11 2 33 45 1 2 1 2 34 5 6 I tried awk F 3 fil
  • Linux TUN/TAP:无法从 TAP 设备读回数据

    问题是关于如何正确配置想要使用 Tun Tap 模块的 Linux 主机 My Goal 利用现有的路由软件 以下为APP1和APP2 但拦截并修改其发送和接收的所有消息 由Mediator完成 我的场景 Ubuntu 10 04 Mach
  • 如何在 shell 脚本中并行运行多个实例以提高时间效率[重复]

    这个问题在这里已经有答案了 我正在使用 shell 脚本 它读取 16000 行的输入文件 运行该脚本需要8个多小时 我需要减少它 所以我将其划分为 8 个实例并读取数据 其中我使用 for 循环迭代 8 个文件 并在其中使用 while
  • 为什么内核需要虚拟寻址?

    在Linux中 每个进程都有其虚拟地址空间 例如 32位系统为4GB 其中3GB为进程保留 1GB为内核保留 这种虚拟寻址机制有助于隔离每个进程的地址空间 对于流程来说这是可以理解的 因为有很多流程 但既然我们只有 1 个内核 那么为什么我
  • 从 Python 调用 PARI/GP

    我想打电话PARI GP http pari math u bordeaux fr dochtml gpman html仅从Python计算函数nextprime n 对于不同的n是我定义的 不幸的是我无法得到帕里蟒蛇 http code
  • Linux 中的动态环境变量?

    Linux 中是否可以通过某种方式拥有动态环境变量 我有一个网络服务器 网站遵循以下布局 site qa production 我想要一个环境变量 例如 APPLICATION ENV 当我在 qa 目录中时设置为 qa 当我在生产目录中时
  • 如何使用GDB修改内存内容?

    我知道我们可以使用几个命令来访问和读取内存 例如 print p x 但是如何更改任何特定位置的内存内容 在 GDB 中调试时 最简单的是设置程序变量 参见GDB 分配 http sourceware org gdb current onl

随机推荐

  • nltk包下载慢的解决方案(总结)

    nltk是常用的自然语言工具包 xff0c 但是由于默认的服务器是基于https的 xff0c 很难连接 在下载nltk包的尤其是使用nltk download 图像化界面的时候 xff0c 经常会碰到无法连接的情况 xff0c 或者连接很
  • word中使用正则表达式进行查找和替换

    xfeff xfeff 术语 开始前 xff0c 我们先定义一对术语 xff1a 通配符指的是您可以用来代表一个或多个字符的键盘字符 例如 xff0c 星号 通常代表一个或多个字符 xff0c 问号 通常代表单个字符 对我们来说 xff0c
  • Linux新版内核升级后问题

    环境 系统 Ubuntu 20 04 x64内核 5 15 0软件 python版iotop iotop 描述 升级最新内核 更新软件包 后 监控系统IO负载出了问题 异常信息 描述如下 CONFIG TASK DELAY ACCT not
  • .net core中使用缓存之MemoryCache(本机内存)

    环境 xff1a net core2 2 nugt包依赖 xff1a 1 Microsoft Extensions Caching Abstractions2 Microsoft Extensions Caching Memory 参考 x
  • flutter doctor出现 Unable to find bundled Java version

    错误 在安装flutter时执行flutter doctor时出现了如下错误 xff1a Android Studio version 2022 1 Unable to find bundled Java version 解决办法 检查下A
  • 调试串口工具的使用-取日志

    SecureCRT自动保存日志设置 H 主机名 xff08 连接主机的IP地址 xff09 Y 年份 M 月份 D 日 h 小时 m 分钟 s 秒 span class token operator span H span class to
  • Android导入kotlin库的相关问题

    1 Android output 输出日志乱码 双击shift xff0c 在里面输入如下 xff0c 并且点击第一个 可能该文件不存在 第一次需要创建 点击创建提示即可 然后在里面输入 Dfile encoding 61 UTF 8 最后
  • 关于鼠标在VirtualBOX与原始系统中自由切换的实现

    在VirtualBox在安装好centos7后发现鼠标不能自由地在虚拟机与外在系统中切换 xff0c 每次要回到外部系统总数要按 CTRL 43 ALT 43 DELETE 键不胜麻烦 想着能实现自由切换的话效率会提升好的 xff0c 心情
  • javascript进阶——Ajax

    传统的Web 页面和应用中 xff0c 用户每点击页面上的某个部分 xff0c 浏览器就会向服务器发出一个请求 xff0c 等待服务器做出响应 xff0c 然后返回一个完整新网页 xff0c 但在大多数情况下用户不得不忍受页面闪烁和长时间的
  • 【用AI写周报,“卷死”同事】打造一款自动生成周报的微信小程序

    文章目录 前言步骤1 xff1a 创建一个ChatGPT账号步骤2 xff1a 创建一个微信小程序并配置API 步骤3 xff1a 在微信开发者工具中创建一个新的微信小程序项目步骤4 xff1a 创建ChatGPT API云函数步骤5 xf
  • 记录泰山200服务器重装Ubuntu18.04 server arm系统问题解决

    一 服务器配置 主板 xff1a TaiShan 200 model 2280 cpu数量 xff1a 2 cpu信号 xff1a Kunpeng 920 4826 内存 xff1a 128GB 磁盘空间 xff1a 4TB 8 二 问题一
  • DDD中的模式

    一 背景 在学DDD的时候我首先看的是 领域驱动设计 软件核心复杂性应对之道 xff0c 这本书里记录了很多概念 xff0c 方法 xff0c 思想 xff0c 策略 xff0c 模式等 整体读下来非常费劲但是收获也不小 xff0c 如何转
  • windows python2 和python3

    python3 6 1环境配置出现Requirement already up to date pip in c python36 lib site packages决解方案 前提 xff1a windows下同时安装python2和pyt
  • Android之视图绑定

    文章目录 viewBinding添加支持页面使用绑定类与idgetRootactivity使用fragment使用 优势与 findViewById 的区别与数据绑定的对比 官方文档 视图绑定主要是替代findViewById功能的 xff
  • 微信小程序云开发调用小票打印机实现方案(亲测)

    微信云开发打印机插件SDK 使用教程 安装 下载后放到项目根目录 优声云打印对接准备工作 注册一个开发者帐号 注册地址 https console ushengyun com 获取开发者参数 登录 gt 开放平台 gt API信息 API集
  • 监听USB设备插拔_使用libuvccamera包

    使用android studio 1 导入libuvccamera包 2 声明变量 xff0c private USBMonitor mUSBMonitor 3 在onStart中注册 xff0c mUSBMonitor register
  • centos7 kernel 升级内核

    span class token function rpm span import https www elrepo org RPM GPG KEY elrepo org span class token comment rpm Uvh h
  • harbor升级 从1.10.2升级到2.2.2

    一 关停harbor服务 span class token builtin class name cd span data harbor install 1 10 2 docker compose down 关停harbor 二 上传获取h
  • Gnome桌面项文件的创建和使用

    桌面项文件用途 可以创建一个桌面图标来执行命令或者打开文件 例如 xff1a 思维导图软件freemind xff0c 每次打开都需要 cd 到目录 xff0c 然后终端 freemind sh xff0c 同时还会占用一个终端 xff0c
  • Visual Studio 2017 + VisualGDB 调试Linux C++程序

    Visual Stuido版本 xff1a VisualGDB版本 xff1a 经过测试 xff0c VisualGBD 5 1暂不支持VS 2017 xff0c 5 3及以上版本在VisualGDB Project Properties