Roll src/third_party/skia e46cf96:5015176
[chromium-blink-merge.git] / docs / linux_debugging_gtk.md
blob93a1afb1b01a5b7b1cad500e10c51bdaf507957e
1 ## Making warnings fatal
3 See [Running GLib Applications](http://developer.gnome.org/glib/stable/glib-running.html) for notes on how to make GTK warnings fatal.
5 ## Using GTK Debug packages
7 ```
8 sudo apt-get install libgtk2.0-0-dbg
9 ```
10 Make sure that you're building a binary that matches your architecture (e.g. 64-bit on a 64-bit machine), and there you go.
12 ### Source
13 You'll likely want to get the source for gtk too so that you can step through it.  You can tell gdb that you've downloaded the source to your system's GTK by doing:
15 ```
16 $ cd /my/dir
17 $ apt-get source libgtk2.0-0
18 $ gdb ...
19 (gdb) set substitute-path /build/buildd /my/dir
20 ```
22 NOTE: I tried debugging pango in a similar manner, but for some reason gdb didn't pick up the symbols from the symbols from the -dbg package. I ended up building from source and setting my LD\_LIBRARY\_PATH.
24 See LinuxBuildingDebugGtk for more on how to build your own debug version of GTK.
26 ## Parasite
27 http://chipx86.github.com/gtkparasite/ is great.  Go check out the site for more about it.
29 Install it with
30 ```
31 sudo apt-get install gtkparasite
32 ```
34 And then run Chrome with
35 ```
36 GTK_MODULES=gtkparasite ./out/Debug/chrome
37 ```
39 ### ghardy
40 If you're within the Google network on ghardy, which is too old to include gtkparasite, you can do:
41 ```
42 scp bunny.sfo:/usr/lib/gtk-2.0/modules/libgtkparasite.so /tmp
43 sudo cp /tmp/libgtkparasite.so /usr/lib/gtk-2.0/modules/libgtkparasite.so
44 ```
46 ## GDK\_DEBUG
48 ```
49 14:43 < xan> mrobinson: there's a way to run GTK+ without grabs fwiw, useful for gdb sessions
50 14:44 < xan> GDK_DEBUG=nograbs
51 ```