Использую KDevelop как граф. среду. В качестве отладчика - стандартно GDB.
Есть проблема: при пошаговой отладке кода при нажатии <F10> (Step Over) при прохождении сложных объектов (объектов классов например) отладчик "ныряет" внутрь конструкторов, inline-функций и прочее. По логике вещей (как я привык в MS VS) когда я даю команду Step Over, отладчик должен выполнить текущую строку целиком (независимо от того, что под ней скрывается) и перейти на следующую строчку. Если мне нужны "внутренности", я скажу Step Into. А тут получается, что нет разницы между Step Over и Step Into.
Как бы настроить Step Over в KDevelop (gdb) на такое поведение? А то отладка простейшего кода превращается в ад. Плюс открывается уйма ненужных файлов с "внутренностями" Qt и проч. Закрывай их потом...
Использую KDevelop как граф. среду. В качестве отладчика - стандартно GDB.
Есть проблема: при пошаговой отладке кода при нажатии <F10> (Step Over) при прохождении сложных объектов (объектов классов например) отладчик "ныряет" внутрь конструкторов, inline-функций и прочее. По логике вещей (как я привык в MS VS) когда я даю команду Step Over, отладчик должен выполнить текущую строку целиком (независимо от того, что под ней скрывается) и перейти на следующую строчку. Если мне нужны "внутренности", я скажу Step Into. А тут получается, что нет разницы между Step Over и Step Into.
Как бы настроить Step Over в KDevelop (gdb) на такое поведение? А то отладка простейшего кода превращается в ад. Плюс открывается уйма ненужных файлов с "внутренностями" Qt и проч. Закрывай их потом...
вот в KDevelop я обычно тыкаю кнопочки мышкой и они всегда работали как надо. А непосредственно в gdb это команды step и next...
Попробуй в консоли эти же вещи.
KDevelop какой версии?
KDevelop версии 3.4.1. В консоли - та же петрушка. Это фича gdb по ходу...
Ещё вопрос: как собрать debug-версию проги? Что-то в настройках проекта ничего не нашёл. Есть подозрение, что в этом дело...
гм... если она у тебя отлаживается - значит она уже debug версия... по моему так...
_________________________________________
ЗЫ1: отлаживать в KDevelop или QDevelop так и не получилось... - ругается ("Failed to read a valid object file image from memory"
сейчас в тестовом режиме осваиваю kdbg... - пока заморочек с F10 не заметил...
(UPD: в QDevelop исправилось.. как и почему не понятно... вроде пути указал в натсройках проекта(?!)..
но суть не в том - все же kdbg удобнее в отладке чем QDevelop... (!) но ему(kdbg) бы редактор нормальный и дерево классов...^^)
_________________________________________
ЗЫ2: и по ходу вопрос - чем отличается "step over F10" и "step over by instruction Shift+F10"? в kdbg ? я пока не нашел разницы...
_________________________________________
QDroid - Среда исполнения и фреймворк для QtScript. OTPD - Открытые драйвера промышленных принтеров чеков и этикеток (кроссплатформенная подсистема печати).
гм... если она у тебя отлаживается - значит она уже debug версия... по моему так...
Не думаю. Вместо значений наблюдаемых переменных часто вижу надпись "value optimized away". Плюс иногда переход по строкам случается в странном порядке. В MSVC++ такое случалось как раз при попытке отлаживать release-версию.
Доподлинно названия контролов не помню, но переключение debug-release было простым.
Можешь указать флаг компиляции "-g", получишь бинарь с отладочной информацией.
Не думаю. Вместо значений наблюдаемых переменных часто вижу надпись "value optimized away". Плюс иногда переход по строкам случается в странном порядке. В MSVC++ такое случалось как раз при попытке отлаживать release-версию.
В руководстве к gdb эта ситуация описана. Твоя программа собирается с опциями -g -O. Первая говорит о том что нужно оставлять отладочную информацию, вторая - надо оптимизировать код. "value optimized away" и "ереход по строкам случается в странном порядке" изза последнего флага. Убери его, если не нравится)