Qt Creator + MinGW 在windows 下的調試GDB停止工作解決

Qt的安装配置请参考本博客本分类下的其他相关文章,本文主要整理在调试时候遇到的问题和解决方法供遇到同样问题的同学参考。由于我之前也没有任何Qt的开发基础,做的也是硬件方面设计,所以这方面基础还是比较薄弱,这儿主要记录摸索过程中的一点心得体会。

Qt的安装和初步配置请参见:Qt Creator的配置和开发初步测试

本文的软件环境:

Win7 32bit

Qt 4.8.4

Qt Creator 2.6.1

MinGW 4.4


摸索了一段时间的Qt和OpenCV,3个平台都有涉及,最大的问题还在于资源过于分散,版本之间很多地方还是有差异的,对于我这样的初学者还是有点麻烦的。

今天使用到Qt的调试这块,遇到了点小问题,这里简单记录。

在进行调试的时候Qt Creator提示调试器未设置,在之前的的配置中也没有留意,于是重新来看看,我用的是MinGW,于是通过自动检测就得到了下图所示的设置。

Qt Creator + MinGW 在windows 下的調試GDB停止工作解決

程序检测到了位于D:\mingw\bin\gdb.exe的调试器,本来觉得这样就可以了,但是在调试的时候发现压根没法运行,提升如下:

Qt Creator + MinGW 在windows 下的調試GDB停止工作解決

无奈,只能在找找法子,通过查找发现,在之前的Qt Creator中,是以一个Qt SDK的整体来提供的,里面就包括了MinGW和调试器,而且也无需配置,现在的新版本都是分散安装的,所以就需要自己单独再找找了。网上的一个说法是2.5以上的版本必须使用7.2 IIRC版以上的GDB,需要需要自己单独下载,这里我找到两个下载地址。

http://qt-project.org/wiki/QtCreatorBuildGdb

内容粘贴如下:

Building GDB
For Windows

A msys Environment with MinGW is required to build the GDB on Windows.
If it is missing download [sourceforge.net] and install it to your system.

Building
  • Go to qt-creator/dist/gdb
  • The directory has 3 Makefiles: linux, osx and mingw. Use the one that corresponds to your host os.
  • In case you need additional targets, edit the line starting with ‘targets=’ in the Makefile.
  • Run:
    1. make -f Makefile.<linuxosxmingw>

Shipping
  • Extract qtcreator-gdb-<gdb version>-<host>.tar.gz
Testing
  • To test GDB just run the executable and type:
    1. python print 23

  • When the GDB prints “23” everything works fine.
Downloads
  • GDB 7.5 binaries [origin.releases.qt-project.org]
  • Compiled python for Windows [get.qt.nokia.com]
Categories:
  • Tools
    • QtCreator
    • 这段文字想说明什么内容看的不是很明白,而且我压根没找到qt-creator/dist/gdb 这个路径存在,我下载了Downloads中的GDB 7.5 binaries,文件名为qtcreator-gdb-7.4-MINGW32_NT-6.1-i686.tar.gz,直接用winRAR解压,文件夹内容如下:

Qt Creator + MinGW 在windows 下的調試GDB停止工作解決

重新配置Qt Creator将调试器定位到这个目录中的gdb-686-pc-mingw32.exe如下图所示,再次调试,能够进行调试。

另外一个下载地址http://builds.qt-project.org/job/gdb-windows/ 同样能够下载这个文件。

Qt Creator + MinGW 在windows 下的調試GDB停止工作解決

Linux相关设置有对应的文件,下载地址如下:http://builds.qt-project.org/view/GDB/job/gdb-unix/label=ubuntu32-builder-1004/ 这里并没有测试。

更多相关文章
一周排行
  • 在程序运行的数据交互中,传输的数据一般都是以数据包的形式传输. 在这个发送和接收的过程中,可能发出的数据包中有错误的数据,也可能接收的包中有错误的数据,从而导致后期的程序处理出错. 因此我们直接抓取传输中的数据包,通 ...
  • 下列语句部分是MsSql语句,不可以在access中使用. SQL分类: DDL-数据定义语言(CREATE,ALTER,DROP,DECLARE) DML-数据操纵语言(SELECT,DELETE,UPDATE,I
  • 基础 Array.prototype.reduce //类似的核心思想 const initState = ''; const actions = ['a', 'b', 'c']; const newState =
  • var目录 /var 包括系统运行时要改变的数据.其中包括每个系统是特定的,即不能够与其他计算机共享的目录,如/var/log,/var/lock,/var/run.有些目录还是可以与其他系统共享,如/var/mai
  • Brief   又要敲那条长到没朋友的命令了,真心不再愛了...   有了history这条命令我想大家可以再愛一次了吧!   >history   语法: history [n -c -raw histfil ...
  • 最近一直在公司搞这个东西,由于各种资料很全(中文的也不少),所以做起来相对容易,也少走了很多弯路.搭好后总结手顺如下. 首先我使用的centOS 5.3,最小安装. YUM一些必要的RPM包. # yum -y in
  • 第一次写博客  最小生成树入门题 附上链接  http://cstest.scu.edu.cn/soj/problem.action?id=2198 这是一道kruskal的模板题(刘汝佳的小白书——<算法竞赛 ...
  • <style name="CustomTabPageIndicator" parent="Widget.TabPageIndicator"> <item na ...
  • @@IDENTITY 返回最后插入的标识值的系统函数.如果语句未影响任何包含标识列的表,则 @@IDENTITY 返回 NULL. 出现 INSERT 或 SELECT INTO 语句失敗或大容量复制失敗,或者事务被
  • Css3  javascript 寫的分類
    不兼容IE10以下的浏览器 <!DOCTYPE html> <html& ...