annotate runtime/doc/debug.txt @ 580:90ee46d7f492 v7.0164

updated for version 7.0164
author vimboss
date Wed, 07 Dec 2005 21:07:59 +0000
parents 52e76e2b5b65
children aa08661abaf7
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
502
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
1 *debug.txt* For Vim version 7.0aa. Last change: 2005 Sep 01
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
2
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
3
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
4 VIM REFERENCE MANUAL by Bram Moolenaar
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
5
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
6
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
7 Debugging Vim *debug-vim*
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
8
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
9 This is for debugging Vim itself, when it doesn't work properly.
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
10
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
11 1. Location of a crash, using gcc and gdb |debug-gcc|
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
12 2. Windows Bug Reporting |debug-win32|
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
13
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
14 ==============================================================================
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
15
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
16 1. Location of a crash, using gcc and gdb *debug-gcc*
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
17
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
18 When Vim crashes in one of the test files, and you are using gcc for
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
19 compilation, here is what you can do to find out exactly where Vim crashes.
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
20 This also applies when using the MingW tools.
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
21
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
22 1. Compile Vim with the "-g" option (there is a line in the Makefile for this,
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
23 which you can uncomment).
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
24
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
25 2. Execute these commands (replace "11" with the test that fails): >
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
26 cd testdir
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
27 gdb ../vim
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
28 run -u unix.vim -U NONE -s dotest.in test11.in
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
29
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
30 3. Check where Vim crashes, gdb should give a message for this.
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
31
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
32 4. Get a stack trace from gdb with this command: >
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
33 where
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
34 < You can check out different places in the stack trace with: >
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
35 frame 3
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
36 < Replace "3" with one of the numbers in the stack trace.
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
37
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
38 ==============================================================================
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
39
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
40 2. Windows Bug Reporting *debug-win32*
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
41
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
42 If the Windows version of Vim crashes in a reproducible manner,
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
43 you can take some steps to provide a useful bug report.
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
44
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
45 First, you must obtain the debugger symbols (PDB) file for your executable:
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
46 gvim.pdb for gvim.exe, or vim.pdb for vim.exe. It should be available
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
47 from the same place that you obtained the executable. Be sure to use
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
48 the PDB that matches the EXE.
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
49
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
50 If you built the executable yourself with the Microsoft Visual C++ compiler,
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
51 then the PDB was built with the EXE.
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
52
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
53 You can download the Microsoft Visual C++ Toolkit from
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
54 http://msdn.microsoft.com/visualc/vctoolkit2003/
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
55 This contains the command-line tools, but not the Visual Studio IDE.
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
56
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
57 The Debugging Tools for Windows can be downloaded from
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
58 http://www.microsoft.com/whdc/devtools/debugging/default.mspx
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
59 This includes the WinDbg debugger.
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
60
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
61 If you have Visual Studio, use that instead of the VC Toolkit
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
62 and WinDbg.
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
63
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
64
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
65 (No idea what to do if your binary was built with the Borland or Cygwin
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
66 compilers. Sorry.)
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
67
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
68 =========================================================================
52e76e2b5b65 updated for version 7.0140
vimboss
parents:
diff changeset
69 vim:tw=78:ts=8:ft=help:norl: