VELT-0.1.5开发:在vs2013下调试Linux GUI程序

VELT的全称是Visual EmbedLinuxTools,它是一个与visual gdb类似的visual studio插件,用以辅助完成Linux开发。利用这个插件,将可以在visual studioIDE中进行Linux应用程序的开发(包括编译和调试),也可以进行ubootlinux内核的编译,并根据编译时的错误信息正确定位到源码。目前的版本是0.1.4,仅支持vs2013。此插件可以在CSDN下载频道下载(http://download.csdn.net/detail/lights_joy/8429771),安装过程参见《vs2013+velt-0.1.4进行嵌入式开发:插件安装》。下面是它的基本功能:

  1. 支持x86 Linux,海思hi3516/hi3520MinGW这几个平台,提供这几个平台的项目模板。

  2. 完成UBOOT的编译,并根据编译的错误信息自动定位到相应的文件位置。

  3. 完成LINUX内核的编译,并根据编译的错误信息自动定位到相应的文件位置。

  4. VS下完成Linux内核的配置。

  5. 不使用Makefile进行Linux应用程序的编译。

  6. 使用Makefile进行Linux应用程序的开发。

  7. 使用SSH连接目标机器并用gdb进行应用程序的调试。

  8. 使用Telnet连接目标机器并用gdb进行应用程序的调试。

  9. VS中集成Linux终端(Poderosa),支持SSH/Telnet/Com,在打开终端时自动将VS的变量导出为bash里的变量,如ProjectDir等。


接下来尝试在vs2013中调试Linux下的GUI程序。

选择wxWidgets-2.8.12做为调试对象,测试其自带的samples-> caret



1.1  设计原理


要调试Linux下的GUI程序,需要解决的问题是UI窗口显示的问题,正常情况下。好在Linux下的X Window是一个基于网络协议而设计的窗口系统,只要在网络上有x server就可以了,并不要求xserver一定要运行在Linux上。因而我们的问题就变成了寻找一个在windows下可以用的x server,再将x11相关的网络包转发给它就可以了。

在此选择xming做为我们的xserver,整个调试器的方案如下:

技术分享


当开始调试时,VELT调试引擎将打开puttyX11 forwarding功能,这样它就会把x11的数据包转发给本地的xmingxming将在本机上构建窗口进行显示。


1.2  X ming试验


首先安装好xming,执行xlauch

技术分享


而后打开puttyx11 forwarding功能:

技术分享


在命令行下执行wxWidgets-2.8.12\sample\caret\caret,我们就看到了xming创建的窗口:

技术分享


比较一下这个窗口在RHEL下的显示效果:

技术分享


仅仅是字体有些差异而已!


1.3  调试


创建一个Linux工程,加上caret.cpp

技术分享


加上宏定义:

技术分享


再加上需要的库文件:

技术分享


编译链接,一切正常。

设断点,F5~~~~

技术分享


搞定!!




??

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。