summaryrefslogtreecommitdiffstats
path: root/tde-i18n-ru/docs/tdevelop/tdevelop/debugger.docbook
diff options
context:
space:
mode:
Diffstat (limited to 'tde-i18n-ru/docs/tdevelop/tdevelop/debugger.docbook')
-rw-r--r--tde-i18n-ru/docs/tdevelop/tdevelop/debugger.docbook317
1 files changed, 68 insertions, 249 deletions
diff --git a/tde-i18n-ru/docs/tdevelop/tdevelop/debugger.docbook b/tde-i18n-ru/docs/tdevelop/tdevelop/debugger.docbook
index cff2b7ab18e..6efa5e283d3 100644
--- a/tde-i18n-ru/docs/tdevelop/tdevelop/debugger.docbook
+++ b/tde-i18n-ru/docs/tdevelop/tdevelop/debugger.docbook
@@ -1,216 +1,85 @@
<chapter id="debugger">
-<title
->Интерфейс отладчика</title>
-<indexterm zone="debugger"
-><primary
->отладчик</primary
-></indexterm>
-
-<para
->Для C и C++ &tdevelop; содержит встроенный отладчик, интегрированный с редактором. Технически это реализовано как внешний интерфейс для отладчика &GNU; <application
->gdb</application
-> через каналы (pipe). Отладчик можно запустить несколькими способами: </para>
+<title>Интерфейс отладчика</title>
+<indexterm zone="debugger"><primary>отладчик</primary></indexterm>
+
+<para>Для C и C++ &tdevelop; содержит встроенный отладчик, интегрированный с редактором. Технически это реализовано как внешний интерфейс для отладчика &GNU; <application>gdb</application> через каналы (pipe). Отладчик можно запустить несколькими способами: </para>
<itemizedlist>
<listitem>
-<para
->Через пункт меню <menuchoice
-><guimenu
->Отладка</guimenu
-><guimenuitem
->Запуск</guimenuitem
-></menuchoice
->, после чего в отладчик загрузится главная программа вашего проекта. </para>
+<para>Через пункт меню <menuchoice><guimenu>Отладка</guimenu><guimenuitem>Запуск</guimenuitem></menuchoice>, после чего в отладчик загрузится главная программа вашего проекта. </para>
</listitem>
<listitem>
-<para
->Через пункт меню <menuchoice
-><guimenu
->Отладка</guimenu
-> <guimenuitem
->Запуск другого</guimenuitem
-> <guimenuitem
->Загрузить файл core</guimenuitem
-></menuchoice
-> загрузится core-файл, генерируемый ядром системы после сбоя программы (это может быть выключено в вашей системе, см. <application
->ulimit(1)</application
->). Эта отладка полезна для анализа сбоев программы. </para>
+<para>Через пункт меню <menuchoice><guimenu>Отладка</guimenu> <guimenuitem>Запуск другого</guimenuitem> <guimenuitem>Загрузить файл core</guimenuitem></menuchoice> загрузится core-файл, генерируемый ядром системы после сбоя программы (это может быть выключено в вашей системе, см. <application>ulimit(1)</application>). Эта отладка полезна для анализа сбоев программы. </para>
</listitem>
<listitem>
-<para
->Через пункт меню <menuchoice
-><guimenu
->Отладка</guimenu
-> <guimenuitem
->Запуск другого</guimenuitem
-> <guimenuitem
->Присоединить к процессу</guimenuitem
-></menuchoice
-> отладчик подстроится к уже запущенной программе. Вам нужно будет выбрать её из списка запущенных процессов. </para>
+<para>Через пункт меню <menuchoice><guimenu>Отладка</guimenu> <guimenuitem>Запуск другого</guimenuitem> <guimenuitem>Присоединить к процессу</guimenuitem></menuchoice> отладчик подстроится к уже запущенной программе. Вам нужно будет выбрать её из списка запущенных процессов. </para>
</listitem>
<listitem>
-<para
->Помните, что отладка возможна только если программа была скомпилирована с информацией для отладки. Это можно установить в диалоге <guibutton
->Параметры компилятора</guibutton
->. Информация для отладки помогает найти соответствие между именами файлов, строчками и адресами в программе. </para>
+<para>Помните, что отладка возможна только если программа была скомпилирована с информацией для отладки. Это можно установить в диалоге <guibutton>Параметры компилятора</guibutton>. Информация для отладки помогает найти соответствие между именами файлов, строчками и адресами в программе. </para>
</listitem>
</itemizedlist>
-<para
->Отладчик предлагает несколько видов информации о процессе: </para>
+<para>Отладчик предлагает несколько видов информации о процессе: </para>
-<para
->При попытке запуска отладки проекта без отладочной информации вы получите сообщение <computeroutput
->Нет исходного кода...</computeroutput
-> в строке состояния. При установке точки останова, она будет показана в панели точек останова как <computeroutput
->В ожидании (добавление)</computeroutput
-> (см. ниже). </para>
+<para>При попытке запуска отладки проекта без отладочной информации вы получите сообщение <computeroutput>Нет исходного кода...</computeroutput> в строке состояния. При установке точки останова, она будет показана в панели точек останова как <computeroutput>В ожидании (добавление)</computeroutput> (см. ниже). </para>
<variablelist>
<varlistentry>
-<term
->Переменные</term>
+<term>Переменные</term>
<listitem>
-<indexterm zone="debugger"
-><primary
->наблюдать переменные</primary
-></indexterm>
-<para
->Окно содержит список значений всех локальных переменных на текущей точке выполнения. </para>
-
-<para
->Можно наблюдать как локальные, так и глобальные переменные. Добавить переменную можно либо нажатием кнопки <guibutton
->Добавить</guibutton
->, либо нажатием клавиши <keycap
->Enter</keycap
-> на выбранном пункте <guilabel
->Наблюдение</guilabel
->. Удалить их можно через контекстное меню. </para>
+<indexterm zone="debugger"><primary>наблюдать переменные</primary></indexterm>
+<para>Окно содержит список значений всех локальных переменных на текущей точке выполнения. </para>
+
+<para>Можно наблюдать как локальные, так и глобальные переменные. Добавить переменную можно либо нажатием кнопки <guibutton>Добавить</guibutton>, либо нажатием клавиши <keycap>Enter</keycap> на выбранном пункте <guilabel>Наблюдение</guilabel>. Удалить их можно через контекстное меню. </para>
</listitem>
</varlistentry>
<varlistentry>
-<term
->Фреймовый стек</term>
+<term>Фреймовый стек</term>
<listitem>
-<indexterm zone="debugger"
-><primary
->фреймовый стек</primary
-></indexterm>
-<para
->(... в процессе написания ...) </para>
+<indexterm zone="debugger"><primary>фреймовый стек</primary></indexterm>
+<para>(... в процессе написания ...) </para>
</listitem>
</varlistentry>
<varlistentry>
-<term
->Точки останова</term>
+<term>Точки останова</term>
<listitem>
-<indexterm zone="debugger"
-><primary
->точки останова</primary
-></indexterm>
-<para
->Данная панель позволяет просматривать и управлять точками останова. Для непосредственной отладки используется <application
->GDB</application
->, так что для полного понимания всех возможностей отладки &tdevelop; необходимо базовое представление о принципе работы <ulink url="http://www.gnu.org/software/gdb"
->GDB</ulink
->. </para>
-
-<para
->Исходный код, содержащий определение точек останова, находится в файле <filename
->tdevelop/languages/cpp/debugger/breakpoint.h</filename
->. </para>
-
-<para
->На левом краю панели имеются кнопки со следующими функциями:</para>
+<indexterm zone="debugger"><primary>точки останова</primary></indexterm>
+<para>Данная панель позволяет просматривать и управлять точками останова. Для непосредственной отладки используется <application>GDB</application>, так что для полного понимания всех возможностей отладки &tdevelop; необходимо базовое представление о принципе работы <ulink url="http://www.gnu.org/software/gdb">GDB</ulink>. </para>
+
+<para>Исходный код, содержащий определение точек останова, находится в файле <filename>tdevelop/languages/cpp/debugger/breakpoint.h</filename>. </para>
+
+<para>На левом краю панели имеются кнопки со следующими функциями:</para>
<itemizedlist>
-<listitem
-><para
->Добавление пустой точки останова</para
-></listitem>
-<listitem
-><para
->Изменение выбранной точки останова</para
-></listitem>
- <listitem
-><para
->Удаление выбранной точки останова</para
-></listitem>
-<listitem
-><para
->Удаление всех точек останова</para
-></listitem>
+<listitem><para>Добавление пустой точки останова</para></listitem>
+<listitem><para>Изменение выбранной точки останова</para></listitem>
+ <listitem><para>Удаление выбранной точки останова</para></listitem>
+<listitem><para>Удаление всех точек останова</para></listitem>
</itemizedlist>
-<para
->Основная часть панели - таблица с 7 столбцами. Каждой строке таблицы соответствует одна точка останова. Столбцы:</para>
+<para>Основная часть панели - таблица с 7 столбцами. Каждой строке таблицы соответствует одна точка останова. Столбцы:</para>
<orderedlist>
-<listitem
-><para
->Переключатель для выбора точек</para
-></listitem>
-<listitem
-><para
->Тип: Ошибка, Файл:строка, Точка наблюдения, Адрес или Метод</para
-></listitem>
-<listitem
-><para
->Статус:</para>
+<listitem><para>Переключатель для выбора точек</para></listitem>
+<listitem><para>Тип: Ошибка, Файл:строка, Точка наблюдения, Адрес или Метод</para></listitem>
+<listitem><para>Статус:</para>
<itemizedlist>
- <listitem
-><para
->Разрешена</para
-></listitem>
- <listitem
-><para
->Запрещена: если точка останова запрещена, при отладке она пропускается.</para
-></listitem>
- <listitem
-><para
->В ожидании (добавление): показывается при отсутствии отладочной информации. Из info-страницы GDB: <blockquote
-><para
->Если указанное расположение точки останова найти не удалось, это может быть из-за того, что библиотека, в которой оно находится, ещё не загружена. В этом случае можно создать особую точку останова (<quote
->pending breakpoint</quote
->), действие которой откладывается до хагрухки необходимой библиотеки.</para
-> </blockquote
-> </para
-></listitem>
+ <listitem><para>Разрешена</para></listitem>
+ <listitem><para>Запрещена: если точка останова запрещена, при отладке она пропускается.</para></listitem>
+ <listitem><para>В ожидании (добавление): показывается при отсутствии отладочной информации. Из info-страницы GDB: <blockquote><para>Если указанное расположение точки останова найти не удалось, это может быть из-за того, что библиотека, в которой оно находится, ещё не загружена. В этом случае можно создать особую точку останова (<quote>pending breakpoint</quote>), действие которой откладывается до хагрухки необходимой библиотеки.</para> </blockquote> </para></listitem>
</itemizedlist>
</listitem>
-<listitem
-><para
->В ожидании (очистка)</para
-></listitem>
-<listitem
-><para
->В ожидании (изменение)</para
-></listitem>
-<listitem
-><para
->Расположение в формате файл:строка</para
-></listitem>
-<listitem
-><para
->Условие</para
-></listitem>
-<listitem
-><para
->Счётчик игнорирования: если число <varname
->N</varname
-> больше нуля, то в первые <varname
->N</varname
-> раз при достижении точки останова выполнение программы остановленр не будет.</para
-></listitem>
-<listitem
-><para
->Попадания: количество достижений точки останова.</para
-></listitem>
+<listitem><para>В ожидании (очистка)</para></listitem>
+<listitem><para>В ожидании (изменение)</para></listitem>
+<listitem><para>Расположение в формате файл:строка</para></listitem>
+<listitem><para>Условие</para></listitem>
+<listitem><para>Счётчик игнорирования: если число <varname>N</varname> больше нуля, то в первые <varname>N</varname> раз при достижении точки останова выполнение программы остановленр не будет.</para></listitem>
+<listitem><para>Попадания: количество достижений точки останова.</para></listitem>
</orderedlist>
@@ -218,15 +87,10 @@
</varlistentry>
<varlistentry>
-<term
->Дизассемблирование</term>
+<term>Дизассемблирование</term>
<listitem>
-<indexterm zone="debugger"
-><primary
->дизассемблирование</primary
-></indexterm>
-<para
->(... в процессе написания ...)</para>
+<indexterm zone="debugger"><primary>дизассемблирование</primary></indexterm>
+<para>(... в процессе написания ...)</para>
</listitem>
</varlistentry>
@@ -234,96 +98,51 @@
<sect1 id="settingbreakpoints">
-<title
->Установка точек останова</title>
+<title>Установка точек останова</title>
-<para
->(... в процессе написания ...) </para>
+<para>(... в процессе написания ...) </para>
-</sect1
-> <!-- settingbreakpoints -->
+</sect1> <!-- settingbreakpoints -->
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
<sect1 id ="debuggeroptions">
-<title
->Параметры</title>
+<title>Параметры</title>
<variablelist>
<varlistentry>
-<term
->Отобразить обработанные имена</term>
+<term>Отобразить обработанные имена</term>
<listitem>
-<indexterm zone="debugger"
-><primary
->обработка имён</primary
-></indexterm>
-<indexterm zone="debugger"
-><primary
->mangle</primary
-><secondary
->имя</secondary
-></indexterm>
-
-<para
->В программе, написанной на C++, имена функций изменяются (<quote
->mangled</quote
->), то есть к начальному имени функции добавляется информация о типах аргументов, которые она принимает. Это необходимо для перегрузки (overload) функций. Алгоритм такой обработки не стандартизован и имеет различные реализации даже в разных версиях компилятора &GNU; C++. </para>
-
-<para
->В окне дизассемблирования отображаются не изменённые имена, однако это можно изменить. </para>
+<indexterm zone="debugger"><primary>обработка имён</primary></indexterm>
+<indexterm zone="debugger"><primary>mangle</primary><secondary>имя</secondary></indexterm>
+
+<para>В программе, написанной на C++, имена функций изменяются (<quote>mangled</quote>), то есть к начальному имени функции добавляется информация о типах аргументов, которые она принимает. Это необходимо для перегрузки (overload) функций. Алгоритм такой обработки не стандартизован и имеет различные реализации даже в разных версиях компилятора &GNU; C++. </para>
+
+<para>В окне дизассемблирования отображаются не изменённые имена, однако это можно изменить. </para>
</listitem>
</varlistentry>
<varlistentry>
-<term
->Попробуйте установку точек останова по загрузке библиотеки</term>
+<term>Попробуйте установку точек останова по загрузке библиотеки</term>
<listitem>
-<indexterm zone="debugger"
-><primary
->"ленивые" точки останова</primary
-></indexterm>
-<indexterm zone="debugger"
-><primary
->точки останова</primary
-><secondary
->lazy</secondary
-></indexterm>
-
-<para
->Отладчик <application
->gdb</application
-> не разрешает устанавливать точки останова в коде, не загруженном в данный момент. В приложении с модульной структурой, где код загружается только по требованию (через функцию libc <function
->dlopen(3)</function
->). Возможность установки точек останова в библиотеках предоставляет &tdevelop;. Таким образом, точки останова ставятся в своеобразную очередь и передаются <application
->gdb</application
-> только после загрузки необходимой библиотеки. </para>
+<indexterm zone="debugger"><primary>"ленивые" точки останова</primary></indexterm>
+<indexterm zone="debugger"><primary>точки останова</primary><secondary>lazy</secondary></indexterm>
+
+<para>Отладчик <application>gdb</application> не разрешает устанавливать точки останова в коде, не загруженном в данный момент. В приложении с модульной структурой, где код загружается только по требованию (через функцию libc <function>dlopen(3)</function>). Возможность установки точек останова в библиотеках предоставляет &tdevelop;. Таким образом, точки останова ставятся в своеобразную очередь и передаются <application>gdb</application> только после загрузки необходимой библиотеки. </para>
</listitem>
</varlistentry>
<varlistentry>
-<term
->Включить плавающую панель</term>
+<term>Включить плавающую панель</term>
<listitem>
-<indexterm zone="debugger"
-><primary
->панель инструментов отладчика</primary
-></indexterm>
-<indexterm zone="debugger"
-><primary
->панель инструментов</primary
-><secondary
->отладчик</secondary
-></indexterm>
-
-<para
->(... в процессе написания ...) </para>
+<indexterm zone="debugger"><primary>панель инструментов отладчика</primary></indexterm>
+<indexterm zone="debugger"><primary>панель инструментов</primary><secondary>отладчик</secondary></indexterm>
+
+<para>(... в процессе написания ...) </para>
</listitem>
</varlistentry>
</variablelist>
-</sect1
-> <!-- debuggeroptions -->
+</sect1> <!-- debuggeroptions -->
-</chapter
-> <!-- debugger -->
+</chapter> <!-- debugger -->