在Qt Creator中加入Qt源代码(在Ubuntu Linux中)

时间:2011-02-19 07:48:19

标签: c++ qt debugging ubuntu

我在Ubuntu中使用Qt Creator。它是从存储库安装的,但就像现在一样,在调试时无法进入Qt源。

我该如何启用?

3 个答案:

答案 0 :(得分:40)

由于Qt Creator使用gdb,您需要配置gdb。首先要做的是安装Qt调试符号:

apt-get install libqt4-dbg

或者,对于Qt5:

apt-get install qtbase5-dbg # For the qtbase package

这将安装Qt库的调试符号。较早版本的Ubuntu有一个愚蠢的错误,需要额外的技巧来纠正这些符号文件,但在当前版本中,它可以正常工作。

这将使gdb步入Qt方法,但没有源代码就没有乐趣。因此,我们需要可以像这样安装的源,假设在APT中启用了源存储库:

apt-get source qt4-x11
ln -s qt4-x11-4.7.0 qt # a convenience symlink

或者,对于Qt5:

apt-get source qtbase-opensource-src
# Make a link as above, if you wish

这将下载源代码,将它们解压缩到当前目录并相应地修补它们,除非当前用户无法写入当前目录,否则不需要root权限。

最后一件事是通知gdb源位置,这是通过将其放在~/.gdbinit文件中完成的:

dir ~/vita/qt/src/corelib
dir ~/vita/qt/src/gui
dir ~/vita/qt/src/network
dir ~/vita/qt/src/sql

根据需要添加模块和更正路径。便利符号链接在这里非常有用,因此我们每次升级到新的Qt版本时都不必编辑此文件。我们只需要下载新的源代码,修补它们并更改符号链接。

请注意,即使我们已经安装了调试符号,我们仍然使用Qt库的发布版本。这意味着代码经过高度优化,并且在步入Qt二进制文件时有时会表现得非常奇怪。如果这是一个问题,那么有必要在调试模式下构建Qt,单独安装(例如,在/ usr / local / qt4-debug中)并告诉Qt Creator使用该特定安装。

答案 1 :(得分:0)

我在Ubuntu上运行的唯一方法是使用configure -debug building Qt from sources。 事后,一切都开始像魅力一样。

答案 2 :(得分:0)

Linux的Qt二进制包不包含调试符号,因此调试器不知道要跳转到的文件或行号。如果您希望能够调试Qt代码,则需要使用-debug configure选项自行构建Qt。

Sergey Tachenov指令的说明仅适用于您根据可从Ubuntu存储库找到的Qt版本构建应用程序。