Кодовые блоки не останавливаются на контрольных точках
Я пытаюсь отлаживать проект С++ в Codeblocks, но он не останавливается на контрольных точках. Я прочитал другие ответы и до сих пор пробовал следующее:
- (
Build Options > Compiler Settings
) Produce debugging symbols
отмечен, strip all symbols
не установлен.
- В пути к файлу нет пробелов/не-ascii.
- Запуск отладочной версии.
- Отладчик в (
Settings > Compiler > Toolchain Executables
) установлен на GDB/CDB Debugger:Default
- Исполняемый путь в (
Settings > Debugger > GDB/CDB Debugger:Default
) - C:\MinGW\bin\gdb.exe
.
Он все еще не останавливается на контрольных точках, а в журнале отладчика упоминается, что не найдены отладочные символы
Что мне здесь не хватает?
Ответы
Ответ 1
При попытке исправить это я столкнулся с множеством аналогичных вопросов, где CodeBlocks игнорирует точки останова во время отладки, поэтому здесь исправления, которые я обнаружил до сих пор.
1. Очистите и перестройте.
2. Убедитесь, что (Параметры сборки > Параметры компилятора). Вывод символов отладки проверяется, все символы не отмечены. Пожалуйста, убедитесь, что это сделано в глобальных настройках и настройках проекта. Это исправлено для меня.
3.Проверьте, чтобы в пути файла проекта не было пробелов/не-ASCII-значений.
4. Проверьте, запущена ли отладочная версия, а не release. Исполняемый файл из сборника Release будет \bin\Release, а исполняемый файл из сборки Debug будет находиться в \bin\Debug.
5. Убедитесь, что отладчик в (Настройки > Компилятоp > Служебные файлы) установлен в GDB/CDB Debugger: по умолчанию.
6.Проверьте, что исполняемый путь в (Настройки > Отладчик > Отладчик GDB/CDB: по умолчанию) действителен как путь к gdb (C:\MinGW\bin\gdb.exe).
7.Update Codeblocks (последнее средство).
Пожалуйста, добавьте в комментарии что-нибудь еще, что сработало для вас.
Ответ 2
У меня тоже была эта проблема, однако, потому что давно я установил
Настройки > Отладчик > Отладчик GDB/CDB > По умолчанию > Команды инициализации отладчика
to
"установить дочерний режим в режиме ожидания"
поэтому GDB фактически полностью отлаживает другую программу.
Ответ 3
Единственное, что сработало для меня:
Путь с пробелами
Точки останова не могут работать, если путь/папка, на которую вы разместили свой проект, содержит пробелы или другие специальные символы. Чтобы быть в безопасности, используйте английские буквы, цифры и "_".
Источник: Отладка с кодом:: Блоки
Также вы можете проверить меню: Build- > Select target- > Debug
Ответ 4
Для меня работала, чтобы удалить файл main.o
, который содержится в obj/Debug
.
Надеюсь, что это поможет кому-то.