VisualGDB 5 使用教程

使用Visual Studio开发C/C++是非常方便的,不仅表现在代码的编写上,更是在调试阶段显的尤为简单,下面将介绍一款VS插件,专门用于在VS下通过ssh连接到Linux主机,实现vs下编写与调试Linux系统下的C/C++代码

VisualGDB-5.3r8-trial插件

链接:https://pan.baidu.com/s/1s7RGBpqZVoEfhtI7GuSZqA 
提取码:dvpz

 

1.创建工程,如下面图所示:

VisualGDB 5 使用教程_第1张图片

VisualGDB 5 使用教程_第2张图片

VisualGDB 5 使用教程_第3张图片

VisualGDB 5 使用教程_第4张图片

VisualGDB 5 使用教程_第5张图片

VisualGDB 5 使用教程_第6张图片

VisualGDB 5 使用教程_第7张图片

VisualGDB 5 使用教程_第8张图片

到现在为止,工程就创建好了,下面是执行效果与调试效果

VisualGDB 5 使用教程_第9张图片

VisualGDB 5 使用教程_第10张图片

对应的Linux主机情况如下

VisualGDB 5 使用教程_第11张图片

VisualGDB 5 使用教程_第12张图片

Linux下运行效果如下图所示

VisualGDB 5 使用教程_第13张图片

有时候代码没有智能提示(VAssistX),鼠标点击工程名,右键鼠标,里面的几个选项随便测试,直到有智能提示位置(该插件会把Linux上默认的C/C++头文件全部下载到本地,以此实现智能提醒,但是有时候任然不行,可以重新安装插件测试),如下图所示

VisualGDB 5 使用教程_第14张图片

VisualGDB 5 使用教程_第15张图片

VisualGDB 5 使用教程_第16张图片

但是如果你的代码中出现中文,不管是注释还是字符串,都有可能乱码,这是因为VS默认的文档编码格式为gb2312,而linux下默认的是utf-8,所以只要改变VS下文档的编码格式就不会出现乱码了(只要VS文档编码格式与linux默认的一样就行),方法如下,先鼠标点击代码编辑框,再点击《文件》-》高级保存选项,如下图所示

VisualGDB 5 使用教程_第17张图片

另外,由于有可能会使用到C++11标准,所以要在所有用到C++11标准的CPP文件中添加这一行
#pragma GCC diagnostic error "-std=c++11"

当然最好是在创建工程之初就设置C++版本,如下

VisualGDB 5 使用教程_第18张图片

2.下面就是用该插件创建动态库文件(创建静态库文件一样的操作),并调试这些动态库文件,现在网上几乎找不到相关的教程,所以就由我来为你讲解,首先创建  .os  工程,其他与上面介绍的一样(包括生成的库文件路径),如下图所示

VisualGDB 5 使用教程_第19张图片

VisualGDB 5 使用教程_第20张图片

将.so工程添加到工程1中,右键工程1工程名,选择添加-》引用,勾上工程2(及.so工程)操作如下

VisualGDB 5 使用教程_第21张图片

VisualGDB 5 使用教程_第22张图片

直接点击运行或调试的情况如下

VisualGDB 5 使用教程_第23张图片

VisualGDB 5 使用教程_第24张图片

VisualGDB 5 使用教程_第25张图片

VisualGDB 5 使用教程_第26张图片

看吧,是不是非常方便,比在Linux下用gdb直接调试安逸很多吧,Linux下生成的库文件不带lib前缀,如下

VisualGDB 5 使用教程_第27张图片

3.接下来才是重头戏,创建一个工程,需要使用别人给你的动态库文件(静态库文件方法相同),首先要告诉插件,要使用的动态库文件的名字(不带lib前缀和.so后缀),文件路径,以及头文件路径,先创建工程 3,使用工程2生成的动态库文件,将工程3设置为启动项,右键工程3工程名,如下图所示

VisualGDB 5 使用教程_第28张图片

VisualGDB 5 使用教程_第29张图片

VisualGDB 5 使用教程_第30张图片

 

点击上图中绿色的下载按钮下载目录下的所有文件(不下载不行),然后

VisualGDB 5 使用教程_第31张图片

VisualGDB 5 使用教程_第32张图片

注意,在工程3生成前要把LinuxProject2.so名字改成libLinuxProject2.so,然后生成工程3,执行或调试的时候再把名字改回来,(聪明一点,你可以把LinuxProject2.so复制一份命名为libLinuxProject2.so,然后两个放在一起,一个用于工程3生成时使用,一个在调试或执行的时候使用,生产环境下丢掉libLinuxProject2.so就行了)。当然如果别人给你的动态库本来就是lib前缀,就不用这么麻烦的,只不过在工程配置动态库名字的时候不带前后缀。其他情况你可以摸索前进,下面是工程3 运行或调试情况

VisualGDB 5 使用教程_第33张图片

VisualGDB 5 使用教程_第34张图片

Linux下运行情况如下

VisualGDB 5 使用教程_第35张图片

本文参考:《点击浏览更多学习文档》

到此,插件的使用基本上就没有什么问题了,感谢各位浏览,也可以给我留言,谢谢!

你可能感兴趣的:(VisualGDB 5 使用教程)