diff options
Diffstat (limited to 'kdbg/doc/ru')
-rw-r--r-- | kdbg/doc/ru/Makefile.am | 27 | ||||
-rw-r--r-- | kdbg/doc/ru/Makefile.in | 609 | ||||
-rw-r--r-- | kdbg/doc/ru/argspwdenv.html | 43 | ||||
-rw-r--r-- | kdbg/doc/ru/breakptlist.html | 68 | ||||
-rw-r--r-- | kdbg/doc/ru/globaloptions.html | 72 | ||||
-rw-r--r-- | kdbg/doc/ru/howdoi.html | 78 | ||||
-rw-r--r-- | kdbg/doc/ru/index.html | 177 | ||||
-rw-r--r-- | kdbg/doc/ru/localvars.html | 19 | ||||
-rw-r--r-- | kdbg/doc/ru/memory.html | 26 | ||||
-rw-r--r-- | kdbg/doc/ru/pgmoutput.html | 43 | ||||
-rw-r--r-- | kdbg/doc/ru/pgmsettings.html | 73 | ||||
-rw-r--r-- | kdbg/doc/ru/registers.html | 31 | ||||
-rw-r--r-- | kdbg/doc/ru/sourcecode.html | 31 | ||||
-rw-r--r-- | kdbg/doc/ru/stack.html | 23 | ||||
-rw-r--r-- | kdbg/doc/ru/threads.html | 38 | ||||
-rw-r--r-- | kdbg/doc/ru/tips.html | 43 | ||||
-rw-r--r-- | kdbg/doc/ru/types.html | 126 | ||||
-rw-r--r-- | kdbg/doc/ru/watches.html | 20 |
18 files changed, 1547 insertions, 0 deletions
diff --git a/kdbg/doc/ru/Makefile.am b/kdbg/doc/ru/Makefile.am new file mode 100644 index 0000000..7fc29b8 --- /dev/null +++ b/kdbg/doc/ru/Makefile.am @@ -0,0 +1,27 @@ +html_DATA = \ + argspwdenv.html \ + breakptlist.html \ + globaloptions.html \ + howdoi.html \ + localvars.html \ + memory.html \ + pgmoutput.html \ + pgmsettings.html \ + registers.html \ + sourcecode.html \ + stack.html \ + threads.html \ + tips.html \ + watches.html \ + index.html + +htmldir = $(kde_htmldir)/ru/kdbg + +EXTRA_DIST = $(html_DATA) + +install-data-local: + $(mkinstalldirs) $(DESTDIR)$(htmldir) + cd $(DESTDIR)$(htmldir) && ln -s -f ../../en/kdbg/types.html . + +uninstall-local: + -rm -f $(DESTDIR)$(htmldir)/types.html diff --git a/kdbg/doc/ru/Makefile.in b/kdbg/doc/ru/Makefile.in new file mode 100644 index 0000000..c70aeeb --- /dev/null +++ b/kdbg/doc/ru/Makefile.in @@ -0,0 +1,609 @@ +# Makefile.in generated by automake 1.10.1 from Makefile.am. +# KDE tags expanded automatically by am_edit - $Revision: 483858 $ +# @configure_input@ + +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ + +VPATH = @srcdir@ +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +target_triplet = @target@ +subdir = kdbg/doc/ru +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ + $(top_srcdir)/configure.in +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +SOURCES = +DIST_SOURCES = +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = `echo $$p | sed -e 's|^.*/||'`; +am__installdirs = "$(DESTDIR)$(htmldir)" +htmlDATA_INSTALL = $(INSTALL_DATA) +DATA = $(html_DATA) +#>- DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +#>+ 1 +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) $(KDE_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AR = @AR@ +ARTSCCONFIG = @ARTSCCONFIG@ +AUTOCONF = @AUTOCONF@ +AUTODIRS = @AUTODIRS@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +CXXDEPMODE = @CXXDEPMODE@ +CXXFLAGS = @CXXFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOPIDLNG = @DCOPIDLNG@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +ECHO = @ECHO@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +ENABLE_PERMISSIVE_FLAG = @ENABLE_PERMISSIVE_FLAG@ +EXEEXT = @EXEEXT@ +F77 = @F77@ +FFLAGS = @FFLAGS@ +FRAMEWORK_COREAUDIO = @FRAMEWORK_COREAUDIO@ +GMSGFMT = @GMSGFMT@ +GREP = @GREP@ +HAVE_GCC_VISIBILITY = @HAVE_GCC_VISIBILITY@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +KCFG_DEPENDENCIES = @KCFG_DEPENDENCIES@ +KCONFIG_COMPILER = @KCONFIG_COMPILER@ +KDECONFIG = @KDECONFIG@ +KDE_CHECK_PLUGIN = @KDE_CHECK_PLUGIN@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_MT_LDFLAGS = @KDE_MT_LDFLAGS@ +KDE_MT_LIBS = @KDE_MT_LIBS@ +KDE_NO_UNDEFINED = @KDE_NO_UNDEFINED@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_USE_FPIE = @KDE_USE_FPIE@ +KDE_USE_NMCHECK_FALSE = @KDE_USE_NMCHECK_FALSE@ +KDE_USE_NMCHECK_TRUE = @KDE_USE_NMCHECK_TRUE@ +KDE_USE_PIE = @KDE_USE_PIE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LDFLAGS = @LDFLAGS@ +LDFLAGS_AS_NEEDED = @LDFLAGS_AS_NEEDED@ +LDFLAGS_NEW_DTAGS = @LDFLAGS_NEW_DTAGS@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBJPEG = @LIBJPEG@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBRESOLV = @LIBRESOLV@ +LIBS = @LIBS@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KABC = @LIB_KABC@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDED = @LIB_KDED@ +LIB_KDEPIM = @LIB_KDEPIM@ +LIB_KDEPRINT = @LIB_KDEPRINT@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KDNSSD = @LIB_KDNSSD@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMPROXY = @LIB_KIMPROXY@ +LIB_KIO = @LIB_KIO@ +LIB_KJS = @LIB_KJS@ +LIB_KNEWSTUFF = @LIB_KNEWSTUFF@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KUNITTEST = @LIB_KUNITTEST@ +LIB_KUTILS = @LIB_KUTILS@ +LIB_POLL = @LIB_POLL@ +LIB_QPE = @LIB_QPE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_X11 = @LIB_X11@ +LIB_XEXT = @LIB_XEXT@ +LIB_XRENDER = @LIB_XRENDER@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAKEINFO = @MAKEINFO@ +MAKEKDEWIDGETS = @MAKEKDEWIDGETS@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MKDIR_P = @MKDIR_P@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CFLAGS = @NOOPT_CFLAGS@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ +PKG_CONFIG = @PKG_CONFIG@ +PS_COMMAND = @PS_COMMAND@ +QTE_NORTTI = @QTE_NORTTI@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +UIC_TR = @UIC_TR@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +WOVERLOADED_VIRTUAL = @WOVERLOADED_VIRTUAL@ +XGETTEXT = @XGETTEXT@ +XMKMF = @XMKMF@ +XMLLINT = @XMLLINT@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +X_RPATH = @X_RPATH@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_CXX = @ac_ct_CXX@ +ac_ct_F77 = @ac_ct_F77@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = $(kde_htmldir)/ru/kdbg +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_kcfgdir = @kde_kcfgdir@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_qtver = @kde_qtver@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_styledir = @kde_styledir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +kde_widgetdir = @kde_widgetdir@ +kdeinitdir = @kdeinitdir@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target = @target@ +target_alias = @target_alias@ +target_cpu = @target_cpu@ +target_os = @target_os@ +target_vendor = @target_vendor@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ +xdg_appsdir = @xdg_appsdir@ +xdg_directorydir = @xdg_directorydir@ +xdg_menudir = @xdg_menudir@ +html_DATA = \ + argspwdenv.html \ + breakptlist.html \ + globaloptions.html \ + howdoi.html \ + localvars.html \ + memory.html \ + pgmoutput.html \ + pgmsettings.html \ + registers.html \ + sourcecode.html \ + stack.html \ + threads.html \ + tips.html \ + watches.html \ + index.html + +EXTRA_DIST = $(html_DATA) +#>- all: all-am +#>+ 1 +all: docs-am all-am + +.SUFFIXES: +$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) +#>- @for dep in $?; do \ +#>- case '$(am__configure_deps)' in \ +#>- *$$dep*) \ +#>- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ +#>- && exit 0; \ +#>- exit 1;; \ +#>- esac; \ +#>- done; \ +#>- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu kdbg/doc/ru/Makefile'; \ +#>- cd $(top_srcdir) && \ +#>- $(AUTOMAKE) --gnu kdbg/doc/ru/Makefile +#>+ 12 + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ + && exit 0; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu kdbg/doc/ru/Makefile'; \ + cd $(top_srcdir) && \ + $(AUTOMAKE) --gnu kdbg/doc/ru/Makefile + cd $(top_srcdir) && perl admin/am_edit -padmin kdbg/doc/ru/Makefile.in +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs +install-htmlDATA: $(html_DATA) + @$(NORMAL_INSTALL) + test -z "$(htmldir)" || $(MKDIR_P) "$(DESTDIR)$(htmldir)" + @list='$(html_DATA)'; for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + f=$(am__strip_dir) \ + echo " $(htmlDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(htmldir)/$$f'"; \ + $(htmlDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(htmldir)/$$f"; \ + done + +uninstall-htmlDATA: + @$(NORMAL_UNINSTALL) + @list='$(html_DATA)'; for p in $$list; do \ + f=$(am__strip_dir) \ + echo " rm -f '$(DESTDIR)$(htmldir)/$$f'"; \ + rm -f "$(DESTDIR)$(htmldir)/$$f"; \ + done +tags: TAGS +TAGS: + +ctags: CTAGS +CTAGS: + + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + fi; \ + cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + else \ + test -f $(distdir)/$$file \ + || cp -p $$d/$$file $(distdir)/$$file \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-am +all-am: Makefile $(DATA) +installdirs: + for dir in "$(DESTDIR)$(htmldir)"; do \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ + done +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +#>- clean: clean-am +#>+ 1 +clean: kde-rpo-clean clean-am + +#>- clean-am: clean-generic clean-libtool mostlyclean-am +#>+ 1 +clean-am: clean-bcheck clean-generic clean-libtool mostlyclean-am + +distclean: distclean-am + -rm -f Makefile +distclean-am: clean-am distclean-generic + +dvi: dvi-am + +dvi-am: + +html: html-am + +info: info-am + +info-am: + +install-data-am: install-data-local install-htmlDATA + +install-dvi: install-dvi-am + +install-exec-am: + +install-html: install-html-am + +install-info: install-info-am + +install-man: + +install-pdf: install-pdf-am + +install-ps: install-ps-am + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-generic mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: uninstall-htmlDATA uninstall-local + +.MAKE: install-am install-strip + +.PHONY: all all-am check check-am clean clean-generic clean-libtool \ + distclean distclean-generic distclean-libtool distdir dvi \ + dvi-am html html-am info info-am install install-am \ + install-data install-data-am install-data-local install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-htmlDATA install-info install-info-am \ + install-man install-pdf install-pdf-am install-ps \ + install-ps-am install-strip installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am uninstall-htmlDATA \ + uninstall-local + + +install-data-local: + $(mkinstalldirs) $(DESTDIR)$(htmldir) + cd $(DESTDIR)$(htmldir) && ln -s -f ../../en/kdbg/types.html . + +uninstall-local: + -rm -f $(DESTDIR)$(htmldir)/types.html +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: + + +#>+ 2 +KDE_DIST=stack.html memory.html index.html watches.html sourcecode.html howdoi.html pgmsettings.html globaloptions.html pgmoutput.html Makefile.in threads.html types.html argspwdenv.html localvars.html registers.html breakptlist.html tips.html Makefile.am + +#>+ 2 +docs-am: + +#>+ 15 +force-reedit: + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ + && exit 0; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu kdbg/doc/ru/Makefile'; \ + cd $(top_srcdir) && \ + $(AUTOMAKE) --gnu kdbg/doc/ru/Makefile + cd $(top_srcdir) && perl admin/am_edit -padmin kdbg/doc/ru/Makefile.in + + +#>+ 21 +clean-bcheck: + rm -f *.bchecktest.cc *.bchecktest.cc.class a.out + +bcheck: bcheck-am + +bcheck-am: + @for i in ; do \ + if test $(srcdir)/$$i -nt $$i.bchecktest.cc; then \ + echo "int main() {return 0;}" > $$i.bchecktest.cc ; \ + echo "#include \"$$i\"" >> $$i.bchecktest.cc ; \ + echo "$$i"; \ + if ! $(CXX) $(DEFS) -I. -I$(srcdir) -I$(top_builddir) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) --dump-class-hierarchy -c $$i.bchecktest.cc; then \ + rm -f $$i.bchecktest.cc; exit 1; \ + fi ; \ + echo "" >> $$i.bchecktest.cc.class; \ + perl $(top_srcdir)/admin/bcheck.pl $$i.bchecktest.cc.class || { rm -f $$i.bchecktest.cc; exit 1; }; \ + rm -f a.out; \ + fi ; \ + done + + +#>+ 3 +final: + $(MAKE) all-am + +#>+ 3 +final-install: + $(MAKE) install-am + +#>+ 3 +no-final: + $(MAKE) all-am + +#>+ 3 +no-final-install: + $(MAKE) install-am + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo + +#>+ 3 +nmcheck: +nmcheck-am: nmcheck diff --git a/kdbg/doc/ru/argspwdenv.html b/kdbg/doc/ru/argspwdenv.html new file mode 100644 index 0000000..9108a91 --- /dev/null +++ b/kdbg/doc/ru/argspwdenv.html @@ -0,0 +1,43 @@ +<!doctype html public "-//w3c//dtd html 4.0 transitional//en"> +<html> +<head> + <meta http-equiv="Content-Type" content="text/html; charset=koi8-r"> + <meta name="Author" content="Johannes Sixt"> + <title>KDbg - Руководство Пользователя - Аргументы, Окружение</title> +</head> +<body text="#000000" bgcolor="#FFFFFF" link="#0000EF" vlink="#51188E" alink="#FF0000"> +<a href="index.html">Содержание</a> +<h1>Указание аргументов программы, рабочего каталога, переменные окружения</h1> +Выберите пункт меню <i>Исполнение|Аргументы</i> для вызова диалогового окна, в +котором вы сможете установить аргументы отлаживаемой программы, ее рабочий +каталог и переменные окружения. +<h2> +<a NAME="PgmArgs"></a>Аргументы программ</h2> +В самой верхней строке ввода укажите аргументы командной строки, которые должны +быть переданы программе. Эти аргументы будут использованы при следующием +запуске программы. +<h2> +<a NAME="WorkingDir"></a>Рабочий каталог</h2> +Ниже расположена строка ввода, в которой вы можете указать рабочий каталог +программы. Программа будет работать в указанном каталоге при следующем запуске. +<p>Рабочий каталог также действует и для gdb! Указанный вами каталог будет +немедленно передан gdb и вступит в силу как только вы нажмете <i>OK</i>. Это +может повлиять на поиск файлов исходных текстов. +<h2> +<a NAME="Environment"></a>Переменные окружения</h2> +В секции переменных окружения введите выражение в виде <tt>VARIABLE=value</tt> +для установки переменной окружения <tt>VARIABLE</tt> в значение <tt>value</tt> +и кликните на кнопку <i>Изменить</i>. Для удаления переменной, выберите ее в +списке и кликните на кнопку <i>Удалить</i>. Для изменения значения переменной, +выберите ее из списка, отредактируйте ее значение в поле редактирования и +кликните по кнопке <i>Изменить</i>. Если вы измените имя переменной и кликните +по кнопке <i>Изменить</i>, то вы добавите новую переменную! Новые переменные +окружения будут использованы вашей программой при следующем запуске. +<p>Если в Linux вы используете библиотеку glibc2, то вам необходимо установить +переменную окружения <tt>LD_BIND_NOW</tt>. Очень важно, чтобы вы установили +значение этой переменной в <tt>1</tt> для всех сессий отладки. Если она не +будет установлена, то gdb не сможет осуществлять пошаговую отладку (в и из) +системных функций, импортируемых из разделяемых библиотек <tt>libc</tt> и +остальных. +</body> +</html> diff --git a/kdbg/doc/ru/breakptlist.html b/kdbg/doc/ru/breakptlist.html new file mode 100644 index 0000000..b3007b3 --- /dev/null +++ b/kdbg/doc/ru/breakptlist.html @@ -0,0 +1,68 @@ +<!doctype html public "-//w3c//dtd html 4.0 transitional//en"> +<html> +<head> + <meta http-equiv="Content-Type" content="text/html; charset=koi8-r"> + <meta name="Author" content="Johannes Sixt"> + <title>KDbg - Руководство Пользователя - Список точек останова</title> +</head> +<body text="#000000" bgcolor="#FFFFFF" link="#0000EF" vlink="#51188E" alink="#FF0000"> +<a href="index.html">Содержание</a> +<h1>Список точек останова</h1> +Список точек останова отображает все установленные точки останова и просмотра и +позволяет манипулировать ими. Он может быть вызван посредством пункта меню +<i>Вид|Точки останова</i>. +<h2>Перечень точек останова</h2> +Для каждой точки останова отображается следующее: +<ul> +<li>местонахождение точки останова,</li> + +<li>счетчик остановок на этой точке,</li> + +<li>счетчик пропусков точки останова, если указан,</li> + +<li>условие останова, если указно.</li> +</ul> +Иконка напротив записи указаывает состояние точки останова: включена - красная +точка, выключена - светло-красная точка, временная точка останова - маленькие +часы или условная точка останова - маленький знак вопроса. +<p>Точки просмотра обозначаются иконкой лупы напротив соответствующей записи. +<h2>Управление точками останова</h2> +<a NAME="StopProg"></a>Необходимо отметить, что точками останова и просмотра +невозможно управлять во время работы программы. Если программа уже запущена, +необходимо, чтобы она остановилась либо попав в точку останова, либо +принудительно посредством вызова пункта меню <i>Исполнение|Прервать</i>. +Это не завершит исполнение программы, а всего лишь остановит ее. Теперь вы +можете управлять точками останва, после чего выберите пункт +<i>Исполнение|Продолжить</i> для продолжения исполнения программы. +<p>Для установки точки останова на определенную строку исходного текста самым +простым способом является установка ее в окне исходных текстов. Если вы не +знаете имени файла и номера строки, где находится интересующая вас функция, вы +просто можете ввести ее имя в строке ввода над списком и кликнуть на кнопку +<i>Добавить Точку Останова</i>. +<p>Вы можете включать и выключать точки останова, выбрав их в списке, а затем +кликнув на кнопки <i>Включить</i> или <i>Выключить</i>. Или просто кликните +средней кнопкой мыши по нужному элементу списка - вы будете включать и +выключать их так же, как и в окне исходных текстов. +<p>Вы можете установить условие срабатывания точки останова или установить +счетчик пропусков этой точки, показывающий количество проходов, при которых не +будет произведен останов. Для этого кликните на кнопку <i>Условия</i> и введите +условие и/или счетчик пропусков. +<h2>Управление точками просмотра</h2> +Точки просмотра похожи на точки останова, за исключением того, что прерывание +происходит только при изменении значения содержимого памяти. Также как и точки +останова, точками просмотра нельзя управлять во время исполнения программы. +Подробнее см. <a href="#StopProg">выше</a>. +<p>Для установки точки просмотра, введите выражение в строку ввода над списком +и кликните на кнопку <i>Добавить Точку Просмотра</i>. Программа остановится при +изменении значения выражения. Необходимо отметить, что точки просмотра, +использующие локальные переменные, могут быть установлены только когда +программа прервана в точке останова (или принудительно посредством вызова +пункта меню <i>Исполнение|Прервать</i>). +<p>Для удаления точки просмотра, выберите ее из списка и кликните на кнопку +<i>Удалить</i>. Если выражение использует локальные переменные, то точка +просмотра будет удалена автоматически при выходе программы из данной области +стека (функции). +<p>Вы также можете установить для точек просмотра условия и счетчик пропусков, +выбрав его из списка и кликнув на кнопку <i>Условия</i>. +</body> +</html> diff --git a/kdbg/doc/ru/globaloptions.html b/kdbg/doc/ru/globaloptions.html new file mode 100644 index 0000000..c82a73d --- /dev/null +++ b/kdbg/doc/ru/globaloptions.html @@ -0,0 +1,72 @@ +<!doctype html public "-//w3c//dtd html 4.0 transitional//en"> +<html> +<head> + <meta http-equiv="Content-Type" content="text/html; charset=koi8-r"> + <meta name="Author" content="Johannes Sixt"> + <title>KDbg - Руководство пользователя - Глобальные Переменные</title> +</head> +<body text="#000000" bgcolor="#FFFFFF" link="#0000EF" vlink="#51188E" alink="#FF0000"> +<a href="index.html">Солдержание</a> +<h1> +Далоговое окно Глобальных Переменных</h1> +Для установки некоторых глобальных переменных можно использовать +<i>Файл|Глобальные Переменные</i>. Вы можете установить: +<ul> +<li> +команду, с помощью которой вызывается gdb,</li> + +<li> +команду, которая открывает терминал для вывода программы,</li> + +<li> +должен ли KDbg переходить в обыкновенный режим после остановки программы и +через какой промежуток времени он опять перейдет в фоновый режим,</li> + +<li> +размер табуляции.</li> +</ul> + +<h4> +Как вызывать gdb</h4> + +<blockquote>Если вы используете различные версии gdb, нужно указать +их в <i>Как вызывать gdb</i>. По умолчанию используется +форма <tt>gdb --fullname +--nx</tt>. Проверьте, указаны ли данные опции, +если вы изменили исполняемый модуль gdb. Если вы пропустите их, KDbg не +будет работать. Если вы испортили запись, ее можно очистить, переведя +в значения по умолчанию.</blockquote> + +<h4> +Как вызвать эмулятор терминала</h4> + +<blockquote>Если вы хотите испотльзовать различные терминальные программы +для показа вывода программы, укажите их в +<i>Терминалы для вывода программ</i>. Значение по умолчанию – +<tt>xterm -name kdbgio -title %T -e sh -c %C</tt>. +В данной записи, +<tt>%T</tt> заменяется титульной строкой, <tt>%C</tt> +заменяется скриптом командного интерпретатора Борна, который будет циклически +вызываться, пока не произойдет закрытия терминального окна. +(Скрипт использует в цикле <tt>sleep +3600</tt>). Альтернави\ой данных установок может служить +<tt>konsole --name kdbgio --caption %T -e sh -c %C</tt>.</blockquote> + +<h4> +Переход в обычный режим</h4> + +<blockquote>Вы можете указать KDbg окну перевестись в обычный режим, +когда отлаживаемая программа завершится (в точке останова или по сигналу). +Иначе окно KDbg не активируется (по крайней мере в KWM &150; оконном менеджере +KDE). Некоторым пользователям такое поведение может показатся навязчивым, +поэтому по умолчанию данная опция отключена. +</blockquote> + +<blockquote>Если опция включена, KDbg переключится в фоновый режим, если +программа будет продолжена, но только по прошествии заданного временного +промежутка. Это сделано для того, чтобы окно отладчика не переключалось +все время, когда используется пошаговое исполнение программы. +</blockquote> + +</body> +</html> diff --git a/kdbg/doc/ru/howdoi.html b/kdbg/doc/ru/howdoi.html new file mode 100644 index 0000000..1549702 --- /dev/null +++ b/kdbg/doc/ru/howdoi.html @@ -0,0 +1,78 @@ +<!doctype html public "-//w3c//dtd html 4.0 transitional//en"> +<html> +<head> + <meta http-equiv="Content-Type" content="text/html; charset=koi8-r"> + <meta name="Author" content="Johannes Sixt"> + <title>KDbg - Руководство пользователя - Как я могу...?</title> +</head> +<body text="#000000" bgcolor="#FFFFFF" link="#0000EF" vlink="#51188E" alink="#FF0000"> +<a href="index.html">Содержание</a> +<h1> +Как я могу...?</h1> + +<h4> +... установить точки останова?</h4> +Существует несколько способов: +<ul> +<li>Нажатием левой клавиши мыши в окне исходного текста в "активной области", +находящейся слева от строки исходного текста.</li> + +<li>Выбрать строку в окне исходного текста и выбрать опцию +меню <i>Точки останова</i>.</li> + +<li>Вы можете воспользоватся <a href="breakptlist.html">списком точек останова</a>.</li> +</ul> +Если вы не можете установить точки останова, возможно программа работает +в данный момент. Когда программа работает, установка точек останова невозможна. +Остановите программу с помощью <i>Выполнение|Прервать</i>. Если +вы по-прежнему не можете установить точку останова, проверьте, скомпилирована +<i>и собрана</i> ли ваша программа с поддержкой информации для отладки. +<h4>... установить значение глобальной переменной или какого-либо выражения?</h4> +Используйте окно Просмотра. +<h4> +... установить точку просмотра?</h4> +Точки просмотра устанавливаются в <a href="breakptlist.html">списке +точек останова</a>. +<h4> +... использовать дамп памяти?</h4> +Сначала необходимо загрузить исполняемый модуль, используя меню +<i>Файл|Исполняемый модуль</i>, затем указать соответствующий дамп памяти, +используя <i>Файл|Дамп Памяти</i>. +<h4> +... отлаживать программу, содержащую бесконечный цикл?</h4> +Запустите программу и подождите, пока она войдет в бесконечный цикл. +Переключитесь в KDbg и выберите <i>Выполнение|Прервать</i>. +Далее можно использовать отладочные средства. +<h4> +... сделать так, чтобы программа определенное количество раз игнорировала +точку останова во время прохода до того, как начнет прерываться?</h4> +В <a href="breakptlist.html">списке точек останова</a> выберите точку +останова; нажмите <i>Условная</i> и укажите количество раз для пропуска +точки останова в поле <i>Число пропусков</i>. +<h4> +... установить переменную среды для исполнемого модуля?</h4> +Выберите <i>Выполнение|Аргументы</i> и укажите переменные среды в +<a href="argspwdenv.html#Environment">диалоге аргументов программы</a>. +<h4> +... установить рабочий каталог для исполняемого модуля?</h4> +Выберите <i>Выполнение|Аргументы</i> и укажите рабочий каталог в +<a href="argspwdenv.html#WorkingDir">диалоге ургументов программы</a>. +<h4> +... избавиться от терминального окна?</h4> +Выберите <i>Файл|Настройки</i> и перейдите на меню +<a href="pgmsettings.html#output">Вывод</a>. +Выберите <i>Только вывод, простая эмуляция терминала</i> и нажмите +<i>OK</i>. +Теперь перезапустите программу (выберите ее из списка +<i>Файл|Последний исполняемый модуль</i>). Вывод программы теперь перенаправлен +в созданное <a href="pgmoutput.html">окно вывода</a>, а в качестве +стандартного потока ввода используется <tt>/dev/null</tt>. +<p>Вы должны произвести данную операцию для каждой новой отлаживаемой +программы. +<p><b><i>Важно:</i></b>Вы не должны делать этого, если программа +читает данные со стандартного потока ввода (обычно терминала) или +ее вывод требует более интеллектуальной эмуляции терминала (то есть +не только возврата каретки и прогона строки). Окно вывода не +поддерживает ввод и эмуляцию терминала. +</body> +</html> diff --git a/kdbg/doc/ru/index.html b/kdbg/doc/ru/index.html new file mode 100644 index 0000000..08e0d88 --- /dev/null +++ b/kdbg/doc/ru/index.html @@ -0,0 +1,177 @@ +<!doctype html public "-//w3c//dtd html 4.0 transitional//en"> +<html> +<head> + <meta http-equiv="Content-Type" content="text/html; charset=koi8-r"> + <meta name="Author" content="Johannes Sixt"> + <title>KDbg - Руководство Пользователя</title> +</head> +<body text="#000000" bgcolor="#FFFFFF" link="#0000EF" vlink="#51188E" alink="#FF0000"> + +<h1>KDbg - Руководство пользователя</h1> + +<h2>Содержание</h2> + +<ul> +<li> +<a href="#Introduction">Введение</a></li> + +<li> +<a href="#UsingKDbg">Использование KDbg</a></li> + +<li> +<a href="#InfoWindows">Информационные окна KDbg</a></li> + +<li> +<a href="#Tips">Советы и пр.</a></li> + +<li>Для опытных пользователей: <a href="types.html">Таблицы типов</a></li> + +<li> +<a href="#KnownProblems">Известные проблемы</a></li> + +<li> +<a href="#Author">Автор</a></li> +</ul> + +<hr> +<h2> +<a NAME="Introduction"></a>Введение</h2> +KDbg является графическим интерфейсом к <tt>gdb</tt>, отладчиком проекта GNU. +<p>Это означает, что KDbg сам по себе не является отладчиком. Скорее, он +общается с <tt>gdb</tt>, отладчиком, использующим командную строку, посылая ему +команды и получая их результат, например, значения переменных. Пункты меню и +указания мышью преобразуются в последовательность команд <tt>gdb</tt>, а +результат преобразуется к более-менее визуальному представлению, такому как +структурное содержимое переменных. +<p>Обобщение выше сказанного - KDbg целиком зависит от возможностей +используемого отладчика <tt>gdb</tt>. KDbg не может делать больше, чем делает +<tt>gdb</tt>. Например, если имеющаяся у вас версия <tt>gdb</tt> не +поддерживает отладку многопоточных программ, то и KDbg не поможет вам в этом +(несмотря на то, что он выводит окно потоков). + +<h2> +<a NAME="UsingKDbg"></a>Использование KDbg</h2> +Перед началом использования KDbg вы наверное захотите просмотреть опции в +диалоге <a href="globaloptions.html">Глобальные Опции</a>, который можно +вызвать из пункта меню <i>Файл|Глобальные Опции</i>. +<h4>Указание отлаживаемой программы</h4> +Для отладки программы выберите пункт меню <i>Файл|Исполняемые модули</i>. Если +вы ранее отлаживали эту программу, вы можете выбрать ее из пункта +<i>Файл|Последние Исполняемые Модули</i>. Программа загрузится. +<p>Если вы хотите произвести отладку по дампу памяти, то сначала вы должны +загрузить программу, породившую этот дамп, а потом загрузить сам дамп, выбрав +пункт меню <i>Файл|Дамп Памяти</i>. Теперь KDbg перейдет в ту точку программы, +которая вызвала создание дампа памяти. +<p>Теперь вы можете устанавливать точки останова, ипользуя меню +<i>Breakpoint</i>, меню, вызваемое правой кнопкой мышы, или +<a href="breakptlist.html">окно точек останова</a>. +<p>Также вы можете установить настройки только для отлаживаемой в данный момент +программы в диалоге <a href="pgmsettings.html">Настройки Программы</a>, +вызываемом пунктом меню <i>Файл|Настройки</i>. + +<h4>Исполнение программы</h4> +Теперь запустите программу, выбрав пункт меню <i>Исполнение|Запуск</i>. Теперь +программа будет исполняться обычным образом до тех пор, пока она либо не +окончится, либо не попадет в точку останова или точку просмотра, либо не +получит сигнал. +<p>Вы можете запустить программу с аргументами, установить рабочий каталог, а +также переменные окружения для данной программы. Для этого выберите пункт меню +<i>Исполнение|Аргументы</i> и укажите ваши параметры в диалоге +<a href="argspwdenv.html">Аргументы Программы</a> (перед запуском программы). +<p>Вы также можете подключиться к уже работающей программе. Для этого загрузите +исполняемый модуль, как описано выше. Затем выберите пункт меню +<i>Исполнение|Подсоединиться</i>. Укажите идентификатор процесса и кликните на +<i>OK</i>. Работающая программа будет остановлена (но не прервана), а в окне +исходных текстов будет указана текущая точка останова. + +<h4>Программа остановлена - что теперь?</h4> +Когда программа останавливается в точке останова, просмотра или при получении +сигнала, в <a href="sourcecode.html">окне исходных текстов</a> указывается +текущая строка остановки программы. Часто встречается ситуация, когда программа +останавливается, получая сигнал (обычно <tt>SIGSEGV</tt>), находясь в функции, +которую вы вызываете из своей программы, но сами не разрабатывали. В этом +случае просмотрите <a href="stack.html">окно стека</a> и найдите функцию, +которую писали вы (начиная с вершины списка) и кликните на нее. Это укажет вам +место, с которого вы сможете начать поиск ошибки в вашей программе. +<p>В меню <i>Исполнение</i> вы найдете команды, которые вам понадобятся для +запуска программы, пошаговой отладке, прерывания исполнения программы +(<i>Прерывание</i>). Важные команды, такие как <i>Запуск</i> и все виды +<i>Шагов</i>, привязаны к функциональным клавишам, которыми рекомендуется +пользоваться для повышения эффективности отладки. +<br><font size=-1>Эти функции не настраиваются, но может вы захотите внести +свой вклад и разработать эту функциональность?</font> +<p>В меню <i>Точки останова</i> вы найдете команды для установки, снятия, +включени и выключения временных и постоянных точек останова. Вы можете вывести +список точек останова в <a href="breakptlist.html">окно точек останова</a>. +Вы также может установить точку останова, кликнув левой кнопкой мыши в левое +поле строки исходного текста. Для включения и выключения точки останова +кликните средней кнопкой мыши на точку останова. +<p>Шестеренка на панели инструментов показывает, что gdb работает, в этом +случае она вертится. Когда она вертится быстро, KDbg не будет принимать +команды исполнения, а если она вращается медленно, то KDbg считывает значения +переменных. +<h2> +<a NAME="InfoWindows"></a>Информационные окна KDbg</h2> +KDbg выводит информацию и принимает команды в различных окнах. В меню +<i>Вид</i> вы обнаружите команды для вызова и закрытия этих окон. Все эти окна +вы можете размещать так, как вам удобно. + +<ul> +<li> +<a href="sourcecode.html">Окно исходных текстов</a></li> + +<li> +<a href="localvars.html">Окно локальных переменных</a></li> + +<li> +<a href="stack.html">Окно стека</a></li> + +<li> +<a href="watches.html">Окно отслеживаемых выражений</a></li> + +<li> +<a href="breakptlist.html">Список точек останова</a></li> + +<li> +<a href="pgmoutput.html">Окно вывода</a></li> + +<li> +<a href="registers.html">Окно содержимого регистров</a></li> + +<li> +<a href="memory.html">Окно образа памяти</a></li> + +<li> +<a href="threads.html">Окно потоков</a></li> +</ul> + +<h2> +<a NAME="Tips"></a>Советы и пр.</h2> +Следующие разделы содержат полезные сведения об использовании KDbg. +<ul> +<li> +<a href="tips.html">Полезные Советы</a></li> + +<li> +<a href="howdoi.html">Как я могу...?</a></li> +</ul> + +<h2> +<a NAME="KnownProblems"></a>Известные проблемы</h2> +gdb 4.16 имеет проблемы с обработкой классов С++ с виртуальным базовым классом. +(Такие классы обычно встречаются в программах, использующих CORBA.) Он +прерывается по ошибке сегментации, а KDbg сообщает о том, что gdb неожиданно +завершился. К сожалению, с этим ничего нельзя сделать. Вам придется +перезапустить gdb, выбрав пункт меню <i>Файл|Исполняемый модуль</i>, который +перезапустит сессию отладки. +<p>Распознавание типов в KDbg работает только для библиотек, динамически +линкуемых с отлаживаемой программой. + +<h2> +<a NAME="Author"></a>Автор</h2> +KDbg разработан <a href="mailto:j6t@kdbg.org">Johannes Sixt</a> +с помощью многих остальных. +<br>Домашняя страница KDbg расположена по адресу +<a href="http://www.kdbg.org/">http://www.kdbg.org/</a>. +</body> +</html> diff --git a/kdbg/doc/ru/localvars.html b/kdbg/doc/ru/localvars.html new file mode 100644 index 0000000..31b9a8b --- /dev/null +++ b/kdbg/doc/ru/localvars.html @@ -0,0 +1,19 @@ +<!doctype html public "-//w3c//dtd html 4.0 transitional//en"> +<html> +<head> + <meta http-equiv="Content-Type" content="text/html; charset=koi8-r"> + <meta name="Author" content="Johannes Sixt"> + <title>KDbg - Руководство Пользователя - Локальные Переменные</title> +</head> +<body text="#000000" bgcolor="#FFFFFF" link="#0000EF" vlink="#51188E" alink="#FF0000"> +<a href="index.html">Содержание</a> +<h1>Окно Локальных Переменных</h1> +Окно локальных переменных вызывается выбором пункта меню <i>Вид|Локальные</i>. +Данное окно отображает содержимое локальных переменных, определенных +указанной текущей областью стека (stack frame). +<p>Отображаемый набор локальных переменных определяется областью стека (stack +frame), выбранной в окне стека. +<p>Значения переменных, изменивщихся между остановами программы, отображаются +красным цветом. +</body> +</html> diff --git a/kdbg/doc/ru/memory.html b/kdbg/doc/ru/memory.html new file mode 100644 index 0000000..e8ba057 --- /dev/null +++ b/kdbg/doc/ru/memory.html @@ -0,0 +1,26 @@ +<!doctype html public "-//w3c//dtd html 4.0 transitional//en"> +<html> +<head> + <meta http-equiv="Content-Type" content="text/html; charset=koi8-r"> + <meta name="Author" content="Johannes Sixt"> + <title>KDbg - Руководство пользователя - Образ памяти</title> +</head> +<body text="#000000" bgcolor="#FFFFFF" link="#0000EF" vlink="#51188E" alink="#FF0000"> +<a href="index.html">Содержание</a> +<h1>Окно образа памяти</h1> +Чтобы отобразить окно образа памяти нужно выбрать <i>Вид|Память</i>. +Оно выводит содержимое памяти программы по любым адресам. +<p>Для просмотра содержимого памяти, введите нужный адрес в поле редактирования. +Адрес не обязательно должен задаваться в шестнадцатеричной форме и может +задаваться выражением. +<p>Вы можете определить формат отображения содержимого памяти с помощью +выбора соответствующих опций из выпадающего меню, которое вызывается +нажатием правой клавиши мыши. +<p>Адресные выражения запоминаются и впоследствии могут быть +вызваны из выпадающего списка. Обратите внимание, что адресные выражения +запоминаются вместе с их форматом. +<p>Если вы не собираетесь исследовать содержимое памяти, рекомендуется +очистить выражение таким образом, чтобы содержимое памяти не выводилось +– это увеличит скорость процесса отладки. +</body> +</html> diff --git a/kdbg/doc/ru/pgmoutput.html b/kdbg/doc/ru/pgmoutput.html new file mode 100644 index 0000000..2a17c69 --- /dev/null +++ b/kdbg/doc/ru/pgmoutput.html @@ -0,0 +1,43 @@ +<!doctype html public "-//w3c//dtd html 4.0 transitional//en"> +<html> +<head> + <meta http-equiv="Content-Type" content="text/html; charset=koi8-r"> + <meta name="Author" content="Johannes Sixt"> + <title>KDbg - Руководство Пользователя - Вывод Программы</title> +</head> +<body text="#000000" bgcolor="#FFFFFF" link="#0000EF" vlink="#51188E" alink="#FF0000"> +<a href="index.html">Содержание</a> +<h1>Окно Вывода Программы</h1> +Окно вывода программы можно вызвать, выбрав пункт меню <i>Вид|Вывод</i>. В это +окно выводятся стандартные потоки вывода и диагностики отлаживаемой программы. +<p>Оно не позволяет вводить какие-либо данные в программу и реализует лишь +минимальную эмуляцию терминала: <tt>\n</tt> (перевод строки) преобразуется в +комбинацию начало строки-перевод строки, а <tt>\r</tt> (начало строки) +игнорируется. Этих возможностей обычно предостаточно для отладки GUI программ, +которые выводят отладочные сообщение в стандартные потоки вывода или +диагностики. +<p>Когда программа отлаживается первый раз, окно вывода программы не +<i>не</i>используется. Ведь KDbg не знает, достаточно ли программе столь +ограниченных возможностей или же она ожидает ввода с терминала. Поэтому по +умолчанию используется штатный эмулятор терминала. Для перенаправления вывода +программы в окно вывода необходимо проделать следующие шаги: +<ol> +<li> +Вызвать диалоговое окно <a href="pgmsettings.html">Настройки</a> посредством +пункта меню <i>Файл|Настройки</i>.</li> + +<li>Выбрать закладку <i>Вывод</i>.</li> + +<li>Выбрать <i>Только вывод, простой эмулятор терминал</i> и кликнуть на +кнопку <i>OK</i>.</li> + +<li>Перезагрузить программу из списка <i>Файл|Последние Исполняемые Модули</i>.</li> +</ol> +Для очистки содержимого окна выберите пункт <i>Очистить</i> в всплывающем меню, +вызываемом нажатием правой кнопки мыши в этом окне. +<p>Если последняя строка окна заполнена текстом, то окно прокручивается +автоматически таким образом, что последняя строка всегда остается видимой при +поступлении новых сообщений. Если вы прокрутите окно, то отображаемая позиция +не изменится. +</body> +</html> diff --git a/kdbg/doc/ru/pgmsettings.html b/kdbg/doc/ru/pgmsettings.html new file mode 100644 index 0000000..ca14b4b --- /dev/null +++ b/kdbg/doc/ru/pgmsettings.html @@ -0,0 +1,73 @@ +<!doctype html public "-//w3c//dtd html 4.0 transitional//en"> +<html> +<head> + <meta http-equiv="Content-Type" content="text/html; charset=koi8-r"> + <meta name="Author" content="Johannes Sixt"> + <title>KDbg - Руководство Пользователя - Настройки Программ</title> +</head> +<body text="#000000" bgcolor="#FFFFFF" link="#0000EF" vlink="#51188E" alink="#FF0000"> +<a href="index.html">Содержание</a> +<h1>Диалог Настройки Программ</h1> +В этом диалоге можно указать настройки конкретной программы. Для его вызова +выберите пункт меню <i>Файл|Настройки</i>. Данные настройки будут применены +только к текущей отлаживаемой программе и будут сохранены между сессиями ее +отладки. +<blockquote><b><i>Важное замечание:</i></b> Настройки будут применены только +при следующей загрузке исполняемого модуля в KDbg. Это означает, что после +нажатия на <i>OK</i> вы должны перезагрузить исполняемый модуль с помощью +пункта меню <i>Файл|Исполняемые модули</i>!!</blockquote> + +<ul> +<li> +<a href="#driver">Отладчик</a></li> + +<li> +<a href="#output">Вывод</a></li> +</ul> + +<h2> +<a NAME="driver"></a>Отладчик</h2> +В этом разделе вы можете указать отладчик, которым будете отлаживать программу. +<h4>Как вызвать GDB</h4> + +<blockquote>Введите команду для вызова gdb. Оставьте это поле пустым для вызова +gdb по умолчанию, указанного в +<a href="globaloptions.html">глобальных опциях</a>. Если вы занимаетесь +кросс-компиляцией и удаленной отладкой, то вы наверное захотите использовать +другой gdb, более подходящий для конкретной платформы. По умолчанию вызывается +<tt>gdb --fullname --nx</tt>. Не забудьте указать данные опции при изменении +используемого отладчика. Если вы их не укажите, KDbg не будет работать. +</blockquote> + +<h2> +<a NAME="output"></a>Вывод</h2> +В этом разделе вы можете указать степень эмуляции терминала, в которой будет +работать программа. +<h4>Нет ввода и вывод</h4> + +<blockquote>Отметьте эту опцию, если ваша программа не получает входных данных +с терминал и вы не хотите видеть то, что она выводит в стандартные потоки +вывода и диагностики. Все стандартные потоки (<tt>stdin</tt>, <tt>stdout</tt> и +<tt>stderr</tt>) перенаправляются в <tt>/dev/null</tt>.</blockquote> + +<h4>Только вывод, простая эмуляция терминала</h4> + +<blockquote>Отметьте эту опцию, если ваша программа не получает входных данных +с терминала (<tt>stdin</tt> будет перенаправлен в <tt>/dev/null</tt>), а вывод +(<tt>stdout</tt> и <tt>stderr</tt>) не требует сложной эмуляции терминала. +Вывод будет отображаться в <i>окне выовда</i>. + +<br><i>Важно:</i> Встроенный эмулятор терминала интерпретирует только символ +новой строки <tt>\n</tt> (ASCII 10) в перевод строки. Он <i>не</i> обрабатывает +символ перевода каретки <tt>\r</tt> (ASCII 13). Этого вполне достаточно для +отображения простых отладочных сообщений, которые обычно используются +разработчиками программ, использующих графический интерфейс.</blockquote> + +<h4>Полная эмуляция терминала</h4> + +<blockquote>Отметьте эту опцию, если ваша программа получает данные из +<tt>stdin</tt>, или вывод в <tt>stdout</tt> or <tt>stderr</tt> требует полной +эмуляции терминала. В этом случае будет использован эмулятор терминала, +указанный в <a href="globaloptions.html">глобальных опциях</a>.</blockquote> +</body> +</html> diff --git a/kdbg/doc/ru/registers.html b/kdbg/doc/ru/registers.html new file mode 100644 index 0000000..eb5c216 --- /dev/null +++ b/kdbg/doc/ru/registers.html @@ -0,0 +1,31 @@ +<!doctype html public "-//w3c//dtd html 4.0 transitional//en"> +<html> +<head> + <meta http-equiv="Content-Type" content="text/html; charset=koi8-r"> + <meta name="Author" content="Johannes Sixt"> + <title>KDbg - Руководство Пользователя - Содержимое регистров</title> +</head> +<body text="#000000" bgcolor="#FFFFFF" link="#0000EF" vlink="#51188E" alink="#FF0000"> +<a href="index.html">Содержание</a> +<h1>Окно Содержимого Регистров</h1> +Всякий раз, когда происходит останов программы, +KDbg выводит содержимое регистров ЦПУ в соответсвующем окне. Для того, чтобы +отобразить данное окно, выберите <i>Вид|Регистры</i>. +<p>Окно содержит 3 колонки: +<ol> +<li>Колонка <i>Регистр</i> выводит имя регистра.</li> + +<li>Колонка <i>Значение</i> выводит содержимое регистров в более или менее +необработанном формате. Необработанный формат обычно выводит шестнадцатеричное +значение, даже для содержимого регистров с плавающей точкой.</li> + +<li>Колонка <i>Декодированное значение</i> выводит содержимое регистров +в декодированной форме. Для арифметических регистров это +обычно знаковое десятичное значение, для регистров с плавающей точкой +– число с плавающей точкой, регистры флагов декодируются в имена +флагов.</li> +</ol> +С помощью правой клавиши мыши можно вызвать меню, которое позволяет +установить формат значений во второй колонке. +</body> +</html> diff --git a/kdbg/doc/ru/sourcecode.html b/kdbg/doc/ru/sourcecode.html new file mode 100644 index 0000000..fba5f3b --- /dev/null +++ b/kdbg/doc/ru/sourcecode.html @@ -0,0 +1,31 @@ +<!doctype html public "-//w3c//dtd html 4.0 transitional//en"> +<html> +<head> + <meta http-equiv="Content-Type" content="text/html; charset=koi8-r"> + <meta name="Author" content="Johannes Sixt"> + <title>KDbg - Руководство пользователя - Исходный Текст</title> +</head> +<body text="#000000" bgcolor="#FFFFFF" link="#0000EF" vlink="#51188E" alink="#FF0000"> +<a href="index.html">Содержание</a> +<h1>Окно Исходного Текста</h1> +Данное окно является главным и всегда отображается. +<p>Окно исходного текста содержит исходный текст программы. Слева от +каждой строки текста находится "активная область". Она содержит +указатель на строку исходного текста, которая выполняется в текущий момент +времени, а также указывает те строки исходного текста, которые содержат +точки останова. +<p>Новые точки останова устанавливаются нажатием левой клавиши мыши в +"активной области". Существующая точка останова может быть активирована +или дезактивирована с помощью средней клавиши мыши. +<p>Может быть нажат знак плюса '+' между "активной областью" и строкой +исходного текста. Это приведет к выводу ассемблерного кода для данной +строки. Чтобы скрыть ассемблерный код, необходимо +нажать клавишу '-'. +<p>Обычно окна исходного текста открываются автоматически. Чтобы +открыть файл с исходным текстом вручную, нужно нажать правую +кнопку мыши и выбрать <i>Открыть исходный текст</i> или +выбрать <i>Файл|Открыть исходный текст</i>. +<p>Для переключения между несколькими файлами с исходными текстами, +выберите нужный файл в меню <i>Окно</i>. +</body> +</html> diff --git a/kdbg/doc/ru/stack.html b/kdbg/doc/ru/stack.html new file mode 100644 index 0000000..082ba9b --- /dev/null +++ b/kdbg/doc/ru/stack.html @@ -0,0 +1,23 @@ +<!doctype html public "-//w3c//dtd html 4.0 transitional//en"> +<html> +<head> + <meta http-equiv="Content-Type" content="text/html; charset=koi8-r"> + <meta name="Author" content="Johannes Sixt"> + <title>KDbg - Руководство Пользователя - Стек</title> +</head> +<body text="#000000" bgcolor="#FFFFFF" link="#0000EF" vlink="#51188E" alink="#FF0000"> +<a href="index.html">Содержание</a> +<h1>Окно Стека</h1> +Окно стека вызывается выбором пункта меню <i>Вид|Стек</i>. Окно стека содержит +списки областей стека (stack frames), например, функции, которые были вызваны, +но еще не завершились. +<p>Самая внутренняя (вложенная) область (место текущего исполнения программы) +находится в самом верху списка. +<p>Для переключения на другую область стека, просто выберите эту область +мышкой. <a href="sourcecode.html">Окно исходных текстов</a> отображает строки +исходных текстов, которые исполняются программой в текущий момент, а +<a href="localvars.html">окно локальных переменных</a> и +<a href="watches.html">окно отслеживаемых выражений</a> изменяются, отображая +локальные переменные выбранной области стека. +</body> +</html> diff --git a/kdbg/doc/ru/threads.html b/kdbg/doc/ru/threads.html new file mode 100644 index 0000000..674c309 --- /dev/null +++ b/kdbg/doc/ru/threads.html @@ -0,0 +1,38 @@ +<!doctype html public "-//w3c//dtd html 4.0 transitional//en"> +<html> +<head> + <meta http-equiv="Content-Type" content="text/html; charset=koi8-r"> + <meta name="Author" content="Johannes Sixt"> + <title>KDbg - Руководство Пользователя - Потоки</title> +</head> +<body text="#000000" bgcolor="#FFFFFF" link="#0000EF" vlink="#51188E" alink="#FF0000"> +<a href="index.html">Содержание</a> +<h1>Окно Потоков</h1> +Окно потоков можно вывести, выбрав пункт меню <i>Вид|Потоки</i>. В окне потоков +отображается список активных потоков программы. +<p><b><i>Замечание:</i></b> Отладка многопоточных программ должна +поддерживаться используемой версией gdb - это не является функцией KDbg. Для +Linux-систем лучше использовать gdb5. +<p>Содержимое окна потоков обновляется при каждой остановке программы +отладчиком. (Т.е. в окне <i>не</i> отображается состояние потоков во время +работы программы.) +<p>Первая колонка отображает идентификатор потока, вторая указывает на текущее +место исполнения данного потока. +<p>Маркер напротив одной из строк указывает на текущий <i>активный</i> поток: +<ul> +<li> +<a href="stack.html">Окно стека</a> отображает стек вызовов активного потока. +</li> + +<li><a href="localvars.html">Окно локальных переменных</a> отображает локальные +переменные активного потока.</li> + +<li><a href="watches.html">Окно просмотра</a> использует локальные переменные +потока для проверки выражений.</li> +</ul> +Если кликнуть на другой поток в списке, то он станет активным и соответственно +будет изменено содержимое других окон. В частности, +<a href="sourcecode.html">окно исходных кодов</a> отобразит место, где текущий +поток был остановлен. +</body> +</html> diff --git a/kdbg/doc/ru/tips.html b/kdbg/doc/ru/tips.html new file mode 100644 index 0000000..7739496 --- /dev/null +++ b/kdbg/doc/ru/tips.html @@ -0,0 +1,43 @@ +<!doctype html public "-//w3c//dtd html 4.0 transitional//en"> +<html> +<head> + <meta http-equiv="Content-Type" content="text/html; charset=koi8-r"> + <meta name="Author" content="Johannes Sixt"> + <title>KDbg - Руководство Пользователя - Полезные Советы</title> +</head> +<body text="#000000" bgcolor="#FFFFFF" link="#0000EF" vlink="#51188E" alink="#FF0000"> +<a href="index.html">Содержание</a> +<h1>Полезные Советы</h1> + +<ul> +<li>Всегда устанавливайте переменную окружения <tt>LD_BIND_NOW=1</tt> в +системах, использующих библиотеку glibc2. + +Установка переменных окружения описана +<a href="argspwdenv.html#Environment">здесь</a>.</li> + +<li>Вы можете использовать точки останова, как закладки: просто установите +точку останова и выключите ее. Позже вы сможете возвратиться к этой точке, +кликнув на нее два раза в списке точек останова (или просто выбрав ее и кликнув +на кнопку <i>Просмотреть Исходный Код</i>). Т.к. точки останова являются +постоянными (т.е. KDbg запоминает их расположение и восстанавливает в следующей +сессии), то при вызове вашей программы на отладку в следующий раз все точки +останова будут на месте. +</li> + +<li>Вы можете изменять значения переменных программы: в окне просмотра +переменных (внизу справа) введите присвоение <tt>var.member=17</tt> и кликните +по кнопке <i>Добавить</i>. Это приведет к немедленному изменению значения +переменной. Теперь вам необходимо удалить это выражение из списка (выбрав +его и кликнув на кнопку <i>Удалить</i>). Это необходимо потому, что просмотр +выражений осуществляется при каждом останове программы и этой переменной будет +присваиваться тоже значение снова и снова!</li> + +<li>Вы можете выводить значение переменных в окно просмотра в разных форматах, +используя модификаторы gdb перед указанием выводимой переменной. Например, +<tt>/x var.member</tt> выведет значение <tt>var.member</tt> в шеснадцатеричном +виде.</li> +</ul> + +</body> +</html> diff --git a/kdbg/doc/ru/types.html b/kdbg/doc/ru/types.html new file mode 100644 index 0000000..7df4271 --- /dev/null +++ b/kdbg/doc/ru/types.html @@ -0,0 +1,126 @@ +<!doctype html public "-//w3c//dtd html 4.0 transitional//en"> +<html> +<head> + <meta http-equiv="Content-Type" content="text/html; charset=koi8-r"> + <meta name="Author" content="Johannes Sixt"> + <title>KDbg - Руководство Пользователя - Таблицы Типов</title> +</head> +<body text="#000000" bgcolor="#FFFFFF" link="#0000EF" vlink="#51188E" alink="#FF0000"> +<a href="index.html">Содержание</a> +<h1>Таблица Типов KDbg</h1> +KDbg может отображать содержимое отдельно взятых членов структурированных типов +данных, таким образом отсутствует необходимость в раскрытии переменных в +<a href="localvars.html">окне локальных переменных</a> или в +<a href="watches.html">окне отслеживаемых выражений</a>. Информация о том, +переменная какого члена отображается, хранится в <i>таблицах типов</i>. Обычно +существует одна таблица на разделяемую библиотеку. +<p>Таблицы типов KDbg расположены в каталоге +<tt>$KDEDIR/share/apps/kdbg/types</tt>. Имена файло таблиц оканчиваются на +<tt>.kdbgtt</tt>. Например, таблица типов для <tt>libqt.so</tt> называется +<tt>qt.kdbgtt</tt>. +<p>Файлы таблиц типов соответствуют стандартному синтаксису файлов конфигурации +KDE. Файл содержит следующие группы: +<ul> +<li> +Группу <tt>[Type Table]</tt>, в которой перечислены типы и информация о том, +как отладчик может определить, слинкована ли программа с этой библиотекой.</li> + +<li>Группу на каждый прописанный тип, в которой содержится информация о том, +как KDbg должен отображать данный тип.</li> +</ul> +Для определения таблиц типов, применимых к отлаживаемой программе, KDbg +запрашивает список разделяемых библиотек, с которыми слинкована программа. +Затем он осуществляет поиск имен этих библиотек в таблицах типов в элементах +<tt>ShlibRE</tt>. Используются те таблицы, в которых были найдены +соответствующие имена библиотек. Если тип появляется в нескольких таблицах, то +неопределено, какое же из описаний будет выбрано. +<h2>Группа <tt>[Type Table]</tt></h2> +Эта группа содержит следующие элементы: +<ul> +<li> +<tt>Types1</tt>, <tt>Types2</tt>, и тд. Эти элементы являются именами типов. +Каждый из них представляет собой разделенный запятыми список имен типов. В +каждом элементе может быть перечислено любое количество типов. (Имена типов +можно разбить на несколько строк, чтобы они строки не получались слишком +длинными.) В этих строках недопустимы символы пробела. Элементы должны +нумероваться последовательно (KDbg прекращает чтение на первом же пропуске), +однако элементы могут быть пусты (т.е. вообще не содержать типов). Иногда +порядок перечисления имен имеет значение (см. пример с <tt>Alias</tt> ниже). +</li> + +<li> +<tt>ShlibRE</tt>. KDbg использует этот элемент для определения, использовать +ли данную таблицу к текущей отлаживаемой программе. Для этого KDbg определяет +разделяемые библиотеки, используемые программой. Если хотя бы одна из них +совпадает со значением этого элемента, таблица используется. Используемые +регулярные выражения совпадают с регулярными выражениями Qt (метасимволы +<tt>.*?[]^$\</tt> распознаются обычным образом, однако отсутсвует возможность +группировать символы.)</li> + +<li> +<tt>LibDisplayName</tt>. Этот элемент используется в списках, в которых +доступные таблицы типов перечислены для указания данной таблицы типов.</li> + +<br><font size=-1>На данный момент это не используется.</font></ul> + +<h2>Группа типа</h2> +На каждый заявленый тип должна быть заведена группа, названная именем типа. +<font size=-1>На данный момент шаблоны С++ не поддерживаются.</font> +Каждая группа содержит следующие элементы: +<ul> +<li> +<tt>Display</tt> указывает, как KDbg должен отображать значение этого типа. +Строка может содержать от 1 до 5 символов '<tt>%</tt>'. Они заменяются на +результаты выражений, описанных в элементах <tt>Expr</tt><i>x</i>.</li> + +<li>Один или более <tt>Expr1</tt>, <tt>Expr2</tt>, и тд. Каждый из них должен +содержать <b>только одну</b> последовательность <tt>%s</tt>, которая будет +заменена выражением, чье значение необходимо получить. Такие выражения +передаются gdb, а результат заносится на место соответствующего символа +процента в элементе <tt>Display</tt>.</li> + +<li> +<tt>Alias</tt> указывает на тип-псевдоним. Если присутствует данная запись, то +с данным типом обходятся также, как с тем, на который он указывает. Этот +тип-псевдоним дожен быть описан перд ссылающимся на него типом в элементах +<tt>Types</tt><i>x</i> группы <tt>[Type Table]</tt>.</li> +</ul> +<font size=-1>На данный момент количество выражений для каждого типа ограничено +пятью. Это может быть с легкостью изменено, но я не рекомендую вообще +приближаться к данному рубежу - это только затормозить процесс отладки.</font> +<p>KDbg распознает специальное расширение, которое используется для вывода +строк Qt 2.0 в unicode: Если перед <tt>Expr</tt><i>x</i> стоит +<tt>/QString::Data</tt>, подразумевается, что результат операции является +указателем на <tt>QString::Data</tt>. Выводимое значение является строкой в +unicode, представленное <tt>QString::Data</tt> (которое может быть +<tt>QString::null</tt>, если это пустая строка Qt, или <tt>(null)</tt>, если +<tt>unicode</tt> член структуры является нулевым указателем). Для примера см. +<tt>qt2.kdbgtt</tt>. + +<p>Совет: Совсем необязательно описывать наследуемые типы, если они должны +обрабатываться также как и базовый класс - KDbg может определить наследование +и использовать описание типа первого (слева) базового класса. Вы можете +использовать элемент <tt>Alias</tt> для быстрого указания класса при +множественном наследовании, отличного от первого слева. +<h2>Пример</h2> +Этот пример показывает, как <tt>QString</tt> и <tt>QObject</tt> описаны в +<tt>qt.kdbgtt</tt>. Дополнительно определен <tt>QTableView</tt>, ссылающийся +на <tt>QObject</tt>. Этот пример применим к Qt 1.x, который расположен в +разделяемых библиотеках, имена которых оканчиваются как <tt>libqt.so.1</tt>. +<pre>[Type Table] +Types1=QString +Types2=QObject,QTableView +LibDisplayName=libqt 1.x +ShlibRE=libqt\.so\.1$ +[QString] +Display={ % } +Expr1=(%s).shd->data +[QObject] +Display={ name=% #chld=% } +Expr1=(%s).objname +Expr2=(%s).childObjects->numNodes +[QTableView] +Alias=QObject</pre> +Замечание: гораздо безопаснее заключать <tt>%s</tt> в скобки. +</body> +</html> diff --git a/kdbg/doc/ru/watches.html b/kdbg/doc/ru/watches.html new file mode 100644 index 0000000..0953b7c --- /dev/null +++ b/kdbg/doc/ru/watches.html @@ -0,0 +1,20 @@ +<!doctype html public "-//w3c//dtd html 4.0 transitional//en"> +<html> +<head> + <meta http-equiv="Content-Type" content="text/html; charset=koi8-r"> + <meta name="Author" content="Johannes Sixt"> + <title>KDbg - Руководство Пользователя - Отслеживаемые Выражения</title> +</head> +<body text="#000000" bgcolor="#FFFFFF" link="#0000EF" vlink="#51188E" alink="#FF0000"> +<a href="index.html">Содержание</a> +<h1>Окно Отслеживаемых Выражений</h1> +Окно отслеживаемых выражений вызывается выбором пункта меню +<i>Вид|Отслеживаемые Выражения</i>. Оно отображает произвольные выражения. +<p>Для добавления выражения, введите его в поле редактирования и нажмите Enter +или кликните на кнопку <i>Добавить</i>. Для удаления выражения, выберите его +(выбирайте корень выражения?) и кликните на кнопку <i>Del</i>. +<p>Отслеживаемые выражения сохраняются между сессиями отладки. Поэтому +рекомендуется удалять выражения, которыми вы уже не пользуетесь, т.к. это +повысит скорость отладки. +</body> +</html> |