[содержание] [назад] [пред] [вверх] [след] [вперед] c. замечания о конфигурации10.13 использование ddd с gdbнекоторые установки gdb крайне важны для корректной работы ddd. вот эти установки и их правильные значения: set height 0 set width 0 set verbose off set prompt (gdb) ddd автоматически устанавливает эти значения при вызове gdb; если их изменить, возможны неполадки, особенно в отображении данных. при отладке на уровне машинного кода с применением в качестве подчиненного отладчика gdb 4.12 или более раннего используйте команду `display /x $pc', чтобы гарантировать обновление значения счетчика инструкций при каждом останове программы. можно также написать эту команду в `~/.gdbinit' или (даже лучше) поставить последнюю версию gdb. 10.14 использование ddd с dbxкогда ddd используется для отладки паскалеобразных программ, он не делает правильных предположений о способе индексации массивов и всегда начинает считать с единицы. с некоторыми версиями dbx (в частности, с solaris dbx) для правильной интерпретации вывода dbx ddd удаляет из него комментарии в стиле си и си++. это также относится к выводу отлаживаемой программы, когда он посылается на консоль отладчика. этих проблем можно избежать, используя отдельное окно выполнения. в некоторых версиях dbx (а именно, dec dbx и aix dbx) нет автоматического отображения данных. в качестве альтернативы, ddd использует для доступа к данным команду dbx `print'. это означает, что имена переменных интерпретируются в соответствии с текущим фреймом; переменные вне текущего фрейма не могут отображаться. 10.15 использование ddd с ladebugвсе ограничения dbx (см. раздел 10.14 использование ddd с dbx) существуют и в ladebug. 10.16 использование ddd с xdbв xdb нет автоматического отображения данных. чтобы обойти это, ddd использует для доступа к данным команду `p'. это означает, что имена переменных интерпретируются в соответствии с текущим фреймом; переменные вне текущего фрейма не могут отображаться. 10.17 использование ddd с jdbв jdb нет автоматического отображения данных. чтобы обойти это, ddd использует для доступа к данным команду `dump'. это означает, что имена переменных интерпретируются в соответствии с текущим фреймом; переменные вне текущего фрейма не могут отображаться. команды jdb `dump' и `print' не поддерживают вычисления выражений. следовательно, вы не можете отображать произвольные выражения.
разбор вывода jdb требует довольно много процессорного времени из-за
распознавания асинхронных подсказок (любая нить может в любое время
что-то напечатать, в том числе подсказки). поэтому программа, которая
много выводит на консоль, скорее всего сильно замедлит работу ddd. в
этом случае запустите программу с ключом 10.18 использование ddd с perlв perl нет автоматического отображения данных. чтобы обойти это, ddd использует для доступа к данным команду `x'. это означает, что имена переменных интерпретируются в соответствии с текущим фреймом; переменные вне текущего фрейма не могут отображаться. 10.19 использование ddd с lesstifв ddd включены несколько хаков, позволяющих запускать ddd с lesstif, свободным клоном motif, без потери функциональности. поскольку двоичный файл ddd может быть динамически скомпонован и использован как с библиотекой osf/motif, так и с lesstif, эти хаки для lesstif можно включать и выключать на время выполнения. включены ли хаки для lesstif во время выполнения или нет, зависит от установки ресурса `lesstifversion':
чтобы установить ресурс `lesstifversion' во время запуска ddd и
указать номер версии библиотеки lesstif, вы можете также использовать
ключ
принимаемое по умолчанию значение ресурса `lesstifversion'
определяется библиотекой lesstif, с которой ddd был скомпонован (или
это вот некоторые сценарии для иллюстрации этой схемы:
чтобы выяснить, с какой версией lesstif или osf/motif был скомпилирован
ddd, вызовите его с ключом в исходном коде ddd специфичные для lesstif хаки контролируются строкой `lesstif_version'. [содержание] [назад] [пред] [вверх] [след] [вперед] |