如何在 Ubuntu 中将 Qt 源添加到 QtCreator?
How to add Qt sources to QtCreator in Ubuntu?
编辑
The answers to this post 要么说自己编译 - 我不想这样做 - 或者安装 qtbase5-dbg
不再是 Ubuntu 版本的一部分。那么没有这个包就没有办法实现吗?每个 Qt 5.X 版本不应该有不同的调试符号吗?
我正在尝试将 Qt 源 - 我使用 Qt 维护工具 与 Qt 一起安装 - 添加到 QtCreator,但我无法让它工作。我已经查看了各种网站寻求帮助,但仍然没有运气。由于我正在尝试开发 Qt3D 小部件,因此我需要进入 Qt 源代码以了解 Qt3D 的工作原理。
对于许多其他人,当我转到“选项”>“调试器”并在“源路径映射”下单击 Add Qt sources...
时,它会将 /home/qt/work/qt
添加为 Source Path
和 /home/[my username]/Qt/5.14.2/Src
(后者是我选择的文件夹)。
由于我无法进入 Qt 源代码,我假设 Source Path
是错误的。我尝试按照 this answer 中的步骤进行操作,但是当我在断点处停止后将鼠标移到调用堆栈中的函数调用上时,不会产生任何路径 - 只有函数名称和地址。
有人还指出,编译后的 Qt 库在从它们获取信息时不得包含 stripped
:file libQt...
。但这就是 file libQt53DCore.so.5.14.2
给我的:
libQt53DCore.so.5.14.2: ELF 64-bit LSB shared object, x86-64, version 1 (GNU/Linux), dynamically linked, BuildID[sha1]=d764882c0c26814e30d63a4d4719143e14e4c735, not stripped
所以我认为这很好。尽管我自己构建了 Qt 并且 file libQt53DCore.so.5.15.0
产生了
libQt53DCore.so.5.15.0: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=88eeb269ff68f0b71e3612d1a538503676da3790, with debug_info, not stripped
即额外的 with debug_info
.
不幸的是,构建 Qt 会产生 20 GB 左右的构建,我将不得不为多个 Qt 版本执行此操作。那么如何正确设置 QtCreator 以便我可以进入 Qt 源代码。
几个小版本前,Qt在维护工具中增加了“Qt调试信息文件”。
它们包含库的调试信息。
这意味着,如果您调试并想要进入人类可读的 Qt 库代码,您必须安装它们。
编辑
The answers to this post 要么说自己编译 - 我不想这样做 - 或者安装 qtbase5-dbg
不再是 Ubuntu 版本的一部分。那么没有这个包就没有办法实现吗?每个 Qt 5.X 版本不应该有不同的调试符号吗?
我正在尝试将 Qt 源 - 我使用 Qt 维护工具 与 Qt 一起安装 - 添加到 QtCreator,但我无法让它工作。我已经查看了各种网站寻求帮助,但仍然没有运气。由于我正在尝试开发 Qt3D 小部件,因此我需要进入 Qt 源代码以了解 Qt3D 的工作原理。
对于许多其他人,当我转到“选项”>“调试器”并在“源路径映射”下单击 Add Qt sources...
时,它会将 /home/qt/work/qt
添加为 Source Path
和 /home/[my username]/Qt/5.14.2/Src
(后者是我选择的文件夹)。
由于我无法进入 Qt 源代码,我假设 Source Path
是错误的。我尝试按照 this answer 中的步骤进行操作,但是当我在断点处停止后将鼠标移到调用堆栈中的函数调用上时,不会产生任何路径 - 只有函数名称和地址。
有人还指出,编译后的 Qt 库在从它们获取信息时不得包含 stripped
:file libQt...
。但这就是 file libQt53DCore.so.5.14.2
给我的:
libQt53DCore.so.5.14.2: ELF 64-bit LSB shared object, x86-64, version 1 (GNU/Linux), dynamically linked, BuildID[sha1]=d764882c0c26814e30d63a4d4719143e14e4c735, not stripped
所以我认为这很好。尽管我自己构建了 Qt 并且 file libQt53DCore.so.5.15.0
产生了
libQt53DCore.so.5.15.0: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=88eeb269ff68f0b71e3612d1a538503676da3790, with debug_info, not stripped
即额外的 with debug_info
.
不幸的是,构建 Qt 会产生 20 GB 左右的构建,我将不得不为多个 Qt 版本执行此操作。那么如何正确设置 QtCreator 以便我可以进入 Qt 源代码。
几个小版本前,Qt在维护工具中增加了“Qt调试信息文件”。 它们包含库的调试信息。
这意味着,如果您调试并想要进入人类可读的 Qt 库代码,您必须安装它们。