当前位置:首页 > 操作系统 > Linux

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

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

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

  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 调试引擎将打开 putty 的 X11 forwarding 功能,这样它就会把 x11 的数据包转发给本地的 xming , xming 将在本机上构建窗口进行显示。


1.2   X ming 试验


首先安装好 xming ,执行 xlauch

技术分享


而后打开 putty 的 x11 forwarding 功能:

技术分享


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

技术分享


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

技术分享


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


1.3   调试


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

技术分享


加上宏定义:

技术分享


再加上需要的库文件:

技术分享


编译链接,一切正常。

设断点, F5~~~~

技术分享


搞定!!



??

原文:http://blog.csdn.net/lights_joy/article/details/44026613


【说明】:本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!

相关教程推荐

其他课程推荐