summaryrefslogtreecommitdiffstats
path: root/winsup/doc
diff options
context:
space:
mode:
authorJon TURNEY <jon.turney@dronecode.org.uk>2015-08-04 13:34:10 +0100
committerJon TURNEY <jon.turney@dronecode.org.uk>2015-08-05 20:17:55 +0100
commit49380b7ee362970ac6b553335968e74bc1186e0d (patch)
treebae169ec77c3223d74b9636b7d2847fab837cf27 /winsup/doc
parent9698cc0f330d16a47dbca04b4c84a5cf7c8dbff0 (diff)
downloadcygnal-49380b7ee362970ac6b553335968e74bc1186e0d.tar.gz
cygnal-49380b7ee362970ac6b553335968e74bc1186e0d.tar.bz2
cygnal-49380b7ee362970ac6b553335968e74bc1186e0d.zip
Improve FAQ answer on debugging Cygwin
Improve FAQ answer on debugging Cygwin to mention the cygwin-debuginfo package and the gdb command 'set cygwin-exceptions on'. 2015-08-03 Jon Turney <jon.turney@dronecode.org.uk> * faq-programming.xml: Improve debugging-cygwin answer. Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
Diffstat (limited to 'winsup/doc')
-rw-r--r--winsup/doc/ChangeLog4
-rw-r--r--winsup/doc/faq-programming.xml26
2 files changed, 26 insertions, 4 deletions
diff --git a/winsup/doc/ChangeLog b/winsup/doc/ChangeLog
index e3eb26f0f..9cff0e4d3 100644
--- a/winsup/doc/ChangeLog
+++ b/winsup/doc/ChangeLog
@@ -1,3 +1,7 @@
+2015-08-03 Jon Turney <jon.turney@dronecode.org.uk>
+
+ * faq-programming.xml: Improve debugging-cygwin answer.
+
2015-07-21 Corinna Vinschen <corinna@vinschen.de>
* new-features.xml (ov-new2.2): Document sigsetjmp, siglongjmp.
diff --git a/winsup/doc/faq-programming.xml b/winsup/doc/faq-programming.xml
index 491da5dbf..0c936ebd6 100644
--- a/winsup/doc/faq-programming.xml
+++ b/winsup/doc/faq-programming.xml
@@ -747,14 +747,32 @@ same time. Remove all but one.
<question><para>I may have found a bug in Cygwin, how can I debug it (the symbols in gdb look funny)?</para></question>
<answer>
-<para>Debugging symbols are stripped from distibuted Cygwin binaries, so any
-symbols that you see in gdb are basically meaningless. It is also a good
+<para>Debugging symbols are stripped from distibuted Cygwin binaries, so to
+debug with <command>gdb</command> you will need to install the
+<package>cygwin-debuginfo</package> package to obtain the debug symbols for
+<filename>cygwin1.dll</filename>
+</para>
+
+<para>
+If your bug causes an exception inside <filename>cygwin1.dll</filename> you will
+need to use the <command>gdb</command> command <userinput>set cygwin-exceptions
+on</userinput> to tell <command>gdb</command> to stop on exceptions inside the
+Cygwin DLL (by default they are ignored, as they may be generated during normal
+operation e.g. when checking a pointer is valid)
+</para>
+
+<para>
+It is also a good
idea to use the latest code in case the bug has been fixed, so we
recommend trying the latest snapshot from
-<ulink url="https://cygwin.com/snapshots/"/> or building the DLL from GIT.
+<ulink url="https://cygwin.com/snapshots/"/> or building the DLL from git.
</para>
+
<para>To build a debugging version of the Cygwin DLL, you will need to follow
-the instructions at <ulink url="https://cygwin.com/faq/faq.html#faq.programming.building-cygwin"/>.
+the instructions at <ulink url="https://cygwin.com/faq/faq.html#faq.programming.building-cygwin"/>.
+</para>
+
+<para>
You can also contact the mailing list for pointers (a simple test case that
demonstrates the bug is always welcome).
</para>