加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

如何让Qt Creator的调试器显示OS X中C向量的内容?

发布时间:2020-12-16 04:53:37 所属栏目:百科 来源:网络整理
导读:我正在编写一个广泛使用向量的程序,并且是第一次在Mac OS X 10.6.6上使用Qt Creator 2.0.1进行开发. 在调试时,我可以在Locals and Watchers窗口中看到文字和数组,但是一旦我扩展了一个向量,在这种类型为Student的情况下,我得到了这个树: 我正在使用的另一个
我正在编写一个广泛使用向量的程序,并且是第一次在Mac OS X 10.6.6上使用Qt Creator 2.0.1进行开发.

在调试时,我可以在Locals and Watchers窗口中看到文字和数组,但是一旦我扩展了一个向量,在这种类型为Student的情况下,我得到了这个树:

我正在使用的另一个人是在Ubuntu上使用相同版本的Qt Creator,可以很好地看到向量的内容.我究竟做错了什么?

这是他的调试器:

解决方法

QtCreator 2.6支持Mac FSF GDB(7.5)支持. FSF GDB支持 python,它允许qtcreator正确显示QVector,QSet,QList,QString等.它可以从macports下载.

>下载并安装macports(从这里下载http://www.macports.org/install.php)
>要安装FSF GDB 7.5:

sudo port install gdb

>授予FSF GDB调试应用程序的权限:

sudo codesign -s gdb-cert /opt/local/bin/ggdb

如果找不到gdb-cert,请单击下面的链接创建gdb-cert,然后按照“创建证书”的说明进行操作:

http://sourceware.org/gdb/wiki/BuildingOnDarwin

如果你不给ggdb许可,你会得到一个:

Unable to find Mach task port for process-id 28885: (os/kern) failure (0x5).
 (please check gdb is codesigned - see taskgated(8))

>在QtCreator中更改套件调试器

将路径从/usr/bin/gdb更改为/ opt / local / bin / ggdb
>默认情况下,FSF GDB无法正确处理断点,因为mac clang不会导出调试符号.要导出调试符号,需要手动运行dsymutil.幸运的是,在使用qmake链接程序后,可以自动运行dysmutil命令.在.pro文件中添加以下行:

macx {
    CONFIG(debug,debug|release) {
        QMAKE_POST_LINK = dsymutil "MyApp.app/Contents/MacOS/MyApp"
    }
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读