在Linux下调试工程是一件很苦逼的事情,不像在Windows下用Visual Studio那样简便,但是最近发现一件神器可以让Linux下的程序一样可以在Windows下的Viusal Studio中调试起来。
VisualGDB通过SSH使得Windows下的VS能够连接到Linux的环境,只要配置好头文件以及库文件等相关目录即可。配置这些属性就和写Makefile一样。
VisualGDB支持Linux的原理是,通过ssh连接到Linux系统上通过ssh给linux下达命令
window10操作系统
vs2017 community版
腾讯云centos 3.10.0-862.el7.x86_64
VisualGDB
官网https://visualstudio.microsoft.com/,在安装的过程中需要勾选“使用c++的linux开发”工具集,搭建linux c++环境;因为我还会用到windows的环境,所以我也选择了“使用c++的Windows桌面开发”。
在Linux服务器端,我们需要安装GDB远程调试工具gdb-gdbserver。当然,你要安装gdb和gdb-gdbserver。gdb在linux系统是调试器,gdb调试器会将数据传递给gdb-gdbserver,然后数据会通过gdb-gdbserver和远程调试控制器通信,将调试结果发给远程调试控制器,并从远程调试控制器获取调试的命令,进而传递给gdb执行。
在Centos系统中,可以通过:
yum info gdb gdb-gdbserver
来查看自己的系统是否已经安装好了。如果没有安装使用下面的命令:
yum install gdb gdb-gdbserver
Visual GDB是集成在VisualStudio上的一款跨平台C++调试插件,终于可以在Linux上用到宇宙第一IDE了。虽然在VS2015中可以安装跨平台的Linux插件,但暂时还不能用CMake组织代码。该方式很适合Linux服务器上的开发(需要用到服务器or集群的高性能)
VisualGDB的安装方法我放在了我的github上了,有需要自行下载:
VisualGDB下载地址:点此下载VisualGDB
1.新建项目,选择“VisualGDB”下的"Linux Project Wizard"
选择“use gun make”,模板可以选默认的,也可以选择空
填写Linux的IP地址,用户名和密码,最好是管理员用户root
然后点击“next”,选择ssh的方式:
然后点击“next”,启动连接,连接成功了
点击“finish”即可完成向导,就创建好了一个Linux项目。
2.创建好项目,编写Linux代码
其中有一个基本的hello代码
在解决方案管理器中,多了“Make files”和Makefile文件。仅此而已。
3.启动调试运行
我们直接F5调试运行。底下会输出编译等信息:
如果你没有打断点,就会弹出这个对话框:没有关系,这个对话框就是提示你没有打断点。直接关掉就可以了。
在底下的输出窗口,已经打印了程序的输出的结果:hello world
我们再打断点,看看有没有调试的信息:
VisualGDB可以看到调试信息。程序实际运行在远程的Linux系统中,调试信息是从远程的Linux中获取的,直接显示在VS中了。相比于Linux上的调试,这是多么方便呀。
如果需要安装一些动态库,比如线程pthread
参考链接:动态库的安装
在Libray names处添加pthread m,然后单击OK,如果弹出什么错误信息,他会询问是否仍然保存设置,不必理会错误信息,选择保存设置
https://blog.csdn.net/qq_35508286/article/details/79947332?utm_source=blogxgwz4