Почему мои контрольные точки не работают в Qt Creator
Создатель Qt может создавать и запускать мои проекты отлично, но он пропустит прямо над любыми точками останова, которые я установил. Я не могу найти никаких вариантов, чтобы исправить это, и я был бы рад помочь.
EDIT: SDK построен в режиме отладки, а конфигурация сборки проекта настроена на отладку.
Ответы
Ответ 1
У Qt Creator есть два режима запуска вашего приложения: "запустить" и "отладить". Я думаю, вы можете быть в замешательстве относительно того, что они означают:
- Запуск: запуск программы, точно так же, как двойной щелчок по исполняемому файлу.
- Отладка: запустите отладчик, присоедините его к исполняемому файлу и запустите исполняемый файл через отладчик. Это записывает все этапы (вызовы функций и т.д.) Вашей программы, включая точки останова.
Вкратце: когда вам нужно выяснить внутреннее значение во время выполнения программы и/или установить контрольные точки, используйте Debug. Для чего-нибудь еще просто запустите его, что намного быстрее.
Ответ 2
Если это сборка cmake, вам нужно установить тип сборки перед настройкой проекта, так что, например,
в вашем верхнем CMakeList.txt:
SET(CMAKE_BUILD_TYPE Debug)
project(mybuildtype)
Официально вы можете передать это также в cmake в разделе "Проекты" при запуске cmake: http://qt-project.org/forums/viewthread/12694, поэтому с -DCMAKE_BUILD_TYPE = флагом отладки, но это больше не работает похоже, работают...
Если вы хотите, чтобы флаг работал, вам нужно проверить его перед настройкой проекта, см. http://www.cmake.org/pipermail/cmake/2008-September/023808.html
Ответ 3
Вам нужно добавить в .pro файл следующую строку:
CONFIG += debug
И, возможно, вам нужно удалить это:
CONFIG += release
Ответ 4
Я надеюсь, что это поможет кому-то, у кого такая же проблема.
Даже я установил режим отладки, но выходные файлы были помещены в папку выпуска, когда я посмотрел на мой .pro файл, я нашел эту строку
CONFIG += qt warn_on release rtti exceptions
Затем я удаляю "release", затем он работает.
Надеюсь, это поможет.