Почему мои точки останова не будут работать в Qt Creator

Qt creator может создавать и запускать мои проекты отлично, но он будет пропускать все точки останова, которые я установил. Я не могу найти никаких вариантов, чтобы исправить это, и я был бы признателен за помощь.

EDIT: SDK построен в режиме отладки, а конфигурация сборки проекта настроена на отладку.

4 ответов


Qt Creator имеет два режима запуска вашего приложения:" run "и"debug". Я думаю, вы можете быть смущены тем, что они означают:

  • Run: запустите программу, точно так же, как дважды щелкнув по исполняемому файлу.
  • Debug: запустите отладчик, присоедините его к исполняемому файлу и запустите исполняемый файл через отладчик. Это записывает все шаги (вызовы функций и т. д.) ваша программа имеет, включая точки останова.

короче говоря: когда вам нужно выяснить внутреннее значение во время выполнения программы и/или установки точек останова используйте Debug. Для чего-либо еще, просто запустите его, что намного быстрее.


Если это сборка cmake, вам нужно установить тип сборки до настройка проекта, например в вашем верхнем списке CMakeList.txt:

SET(CMAKE_BUILD_TYPE Debug)
project(mybuildtype)

официально, вы можете передать это также cmake в разделе проектов при запуске cmake:http://qt-project.org/forums/viewthread/12694, поэтому с флагом-DCMAKE_BUILD_TYPE=Debug, но это больше не работает... Если вы хотите, чтобы флаг работал, вам нужно протестировать его перед установкой проекта, см. http://www.cmake.org/pipermail/cmake/2008-September/023808.html


Я надеюсь, что это поможет кому-то, у кого такая же проблема. Даже я установил его режим отладки, но выходные файлы были помещены в папку release, когда я посмотрел на мой .pro файл, я нашел эту строку

CONFIG += qt warn_on release rtti exceptions

затем я удаляю "release", тогда это сработало. Надеюсь, это поможет.


вам нужно добавить .pro файл следующая строка:

CONFIG     += debug

и, возможно, вам нужно удалить это:

CONFIG     += release