Как мне использовать gdbmacros.cpp в QtCreator? - PullRequest
1 голос
/ 15 апреля 2009

Я пытаюсь отладить в QtCreator на Linux, и я получаю сообщение:

Отлаженный двоичный файл не содержит информации, необходимой для правильного отображения типов данных Qt.

Возможно, вы захотите попробовать включить файл

... / доля / QtCreator / gdbmacros / gdbmacros.cpp

в ваш проект напрямую.

Добавление ~ / qtcreator / gdbmacros / gdbmacros.cpp в файл моего проекта не помогает.

Есть идеи?

Ответы [ 3 ]

1 голос
/ 25 августа 2009

В меню «Инструменты» выберите «Параметры». В виджете дерева (левая панель) вы найдете запись для QT4.

На правой панели будет указано, был ли обнаружен QT (скорее всего, да, в вашем случае) и был ли найден помощник по отладке.

Если код помощника по отладке не был найден, у вас будет возможность «сгенерировать помощник по отладке». Нажмите эту опцию, и все готово.

Когда вы, наконец, приступите к отладке своего кода, выберите Отладка / Представления / Отладчик. Удерживая мышь на панели отладчика, щелкните правой кнопкой мыши и убедитесь, что в контекстном меню установлен флажок «использовать помощник по отладке».

Это работало для меня только в проектах QT и только для определенных классов. Например, QString отображает хорошо, но std :: string не работает (std :: vector работает).

1 голос
/ 14 апреля 2011

Для справки: эта информация относится только к Qt Creator 1.3.x и недействительна, начиная с 2.0, которая использует встроенные скрипты Python gdb для Linux и Window / MinGW. GDB / Mac по-прежнему использует скомпилированные помощники отладки, но их загрузка выполняется Creator, как и использование CDB для двоичных файлов, скомпилированных с помощью компилятора Microsoft Windows.

0 голосов
/ 16 апреля 2009

Пожалуйста, проверьте, что установлен Build & Run -> Build Settings -> Link Debugging Helper и что у вас установлен как минимум Qt 4.4.

Кроме того, если вы используете версию-кандидата, предшествующую версии 1.0, вам следует обновить ее до последней версии. Текущая версия 1.0 и доступна здесь .

...