2010-06-08 105 views
19

Qt創建者可以完美地構建和運行我的項目,但它會直接跳過我設置的任何斷點。我找不到任何方法來解決這個問題,我希望能得到一些幫助。爲什麼我的斷點不能在Qt Creator中工作

編輯:SDK內置調試模式,並且項目生成配置設置爲調試。

+1

看看gdb控制檯窗口,也許gdb在加載應用程序時抱怨某事。 – Eugene 2010-06-08 19:52:37

+0

從命令提示符構建時,我沒有收到意外的消息。 – CoutPotato 2010-06-08 20:08:31

+0

不,在創建者時,當您在調試器下啓動應用程序時,應該切換到調試面板。在那裏你可以顯示gdb控制檯(默認情況下它隱藏着,我想,檢查菜單)。 GDB在那裏打印了很多東西(加載的DLL等) – Eugene 2010-06-08 20:13:53

回答

7

Qt Creator有兩種運行你的應用程序的模式:「運行」和「調試」。我想你可能會對它們的意思感到困惑:

  • 運行:啓動程序,就像雙擊可執行文件一樣。
  • 調試:啓動調試器,將其附加到可執行文件,然後通過調試器運行可執行文件。這記錄了程序所有的步驟(函數調用等),包括斷點。

簡而言之:當您需要在程序執行過程中找出內部值和/或設置斷點時,請使用Debug。對於其他任何東西,只要運行它,速度要快得多。

+2

在QtCreator 2.3中。0,從「釋放」(不停止調試器在斷點處)切換到「調試」您需要點擊項目圖標 - >然後點擊構建下拉 - >然後您應該看到「釋放」和「調試「 - >點擊」調試「。項目圖標位於大運行的左下角,調試,生成項目GUI圖標。 – 2011-09-19 17:21:01

+1

如果您沒有將項目切換到「調試」,那麼調試器將總是跳過您的斷點。更改爲「調試」後,請確保清潔。 – 2011-09-19 17:23:54

+2

儘管上述內容非常真實,但它並沒有回答當前的問題 - 假設在調試模式下和調試會話下正確執行了運行,仍然有GDB(但更常見的是CDB)不會停在斷點上的情況。通常會在嘗試將調試器同步到進程而沒有成功之後發生。不幸的是,我仍然無法弄清楚爲什麼會發生這種情況,而且只是在某些情況下。 – Adi 2012-04-18 18:30:46

3

我希望這會幫助有同樣問題的人。 即使我將它設置調試模式,但輸出的文件被提上發佈的文件夾,當我看着我的.pro文件,我發現這條線

CONFIG += qt warn_on release rtti exceptions 

然後我刪除「釋放」,那麼它的工作。 希望這會有所幫助。

4

您需要在.pro文件在下一行添加:

CONFIG  += debug 

而且可能是你需要刪除此:

CONFIG  += release 
19

如果這是一個CMake的構建,你需要設置之前生成類型設置項目,在你最CMakeList.txt所以如 :

SET(CMAKE_BUILD_TYPE Debug) 
project(mybuildtype) 

正式的,當運行cmake:http://qt-project.org/forums/viewthread/12694時,你也可以將它傳遞給cmake,因此使用-DCMAKE_BUILD_TYPE = Debug標誌,但是這似乎不再有效... 如果你想要一個標誌工作,你需要在設置項目之前對其進行測試,請參見http://www.cmake.org/pipermail/cmake/2008-September/023808.html

相關問題