[英]Stepping into Qt sources in Qt Creator (in Ubuntu Linux)
[英]How to add Qt sources to QtCreator in Ubuntu?
編輯這篇文章的答案要么說自己編譯 - 我不想這樣做 - 要么安裝不再屬於 Ubuntu 版本的qtbase5-dbg
。 那么沒有這個包就沒有辦法做到這一點嗎? 每個 Qt 5.X 版本不應該有不同的調試符號嗎?
我正在嘗試將 Qt 源(我使用 Qt 維護工具沿 Qt 安裝)添加到 QtCreator,但無法使其工作。 我已經查看了各種網站尋求幫助,但仍然沒有運氣。 由於我正在嘗試開發 Qt3D 小部件,因此我需要進入 Qt 源代碼以了解 Qt3D 的工作原理。
至於其他許多人,當我轉到 Options > Debugger 並在 Source Path Mappings 下單擊Add Qt sources...
它添加/home/qt/work/qt
作為Source Path
和/home/[my username]/Qt/5.14.2/Src
(后者是我選擇的文件夾)。
由於我無法進入 Qt 源,我認為Source Path
是錯誤的。 我試圖按照這個答案中的步驟進行操作,但是當我在斷點處停止后將鼠標移到調用堆棧中的函數調用上時,不會產生任何路徑 - 只是函數名稱和地址。
有人還指出,編譯后的 Qt 庫在從它們獲取信息時不能包含stripped
,如下所示: file libQt...
。 但這是file libQt53DCore.so.5.14.2
給我的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 庫代碼,您必須安裝它們。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.