[содержание] [назад] [пред] [вверх] [след] [вперед] 9. изменение программыddd предоставляет некоторые базовые средства для редактирования и перекомпиляции исходного кода, а также для наложения заплат на исполняемые файлы и файлы с дампами памяти. 9.1 редактирование исходного кодавы не можете изменять текущий отображаемый файл в самом ddd. вместо этого ddd позволяет вам вызвать текстовый редактор. чтобы вызвать текстовый редактор для текущего исходного файла, нажмите кнопку `edit' или выберите `source => edit source'. по умолчанию ddd пробует запустить несколько распространенных редакторов. вы можете настроить ddd на использование вашего любимого редактора; см. раздел 9.1.1 настройка редактирования, для получения подробностей. после выхода из редактора отображение исходного кода автоматически обновляется. если у вас параллельно запущены и ddd, и редактор, вы также можете обновлять исходный код вручную через `source => reload source'. это перезагружает отображаемый код из исходного файла. поскольку ddd автоматически перезагружает исходный код при перекомпиляции отлаживаемой программы, ручная перегрузка редко бывает нужна. 9.1.1 настройка редактированиявы можете указать, каким редактором вы предпочитаете пользоваться, через `edit => preferences => helpers => edit sources'. с этой установкой связан такой ресурс:
ниже показана установка из `~/.ddd/init' для вызова сеанса
редактирования в редакторе xemacs с запущенным ddd*editcommand: gnuclient +@line@ @file@
эта установка из `~/.ddd/init' вызывает сеанс
редактирования в редакторе emacs с запущенным ddd*editcommand: emacsclient +@line@ @file@ 9.1.2 редактирование на местеэто экспериментальный ресурс:
9.2 перекомпиляция
для перекомпиляции исходного кода с помощью
кнопка `make' на панели команд повторно вызывает 9.3 наложение заплатпри использовании gdb вы можете открыть исполняемый код вашей программы (и файл с дампом памяти) как для чтения, так и для записи. это позволяет изменять машинный код, так что вы можете намеренно накладывать заплаты на исполняемый файл вашей программы. например, вы можете захотеть выставить внутренние отладочные флаги или даже сделать аварийные исправления. чтобы наложить заплату на двоичный файл, включите `edit => gdb settings => writing into executable and core files'. тогда gdb будет открывать исполняемые файлы и дампы памяти и для чтения, и для записи. если вы уже загрузили файл, вы должны загрузить его снова (с помощью `edit => open file' или `edit => open core'), чтобы новая установка возымела силу. не забудьте выключить `writing into executable and core files' как можно скорее, чтобы предотвратить неумышленное изменение машинного кода. [содержание] [назад] [пред] [вверх] [след] [вперед] |