Skip to content

Google Breakpad (WIP)

Jose Barros edited this page Jan 3, 2016 · 2 revisions

Generating debug symbols

You need debug symbols in order to use google's breakpad dump files. Debug symbols need to be placed in a specific directory structure. You can generate these symbols by using the EXPORT_SYMBOLS=YES build flag on any ground package targets (package_installer, package_ground...) and using the DUMP_SYMBOLS_TOOL=PATH_TO_TOOL/dump_syms to point to the dump_syms binary.

You can build this tool yourself or use a compiled binary binary

Generating dump files

Normally dump files are generated when something goes bad. But for testing purposes you can just use run the gcs with ./drgcs -pcrashme=yes and save the dump file to your disk.

Analyzing/Processing dump files

You can process a dump produced on any OS on any other OS as long as you have the symbols files for the OS where the dump was produced. Having the dump and the symbols on just needs to use the following command: ./minidump_stackwalk ~/dump.dmp ~/Code/dRonin/build/package-20160103-a96fcf70/gcs_linux_amd64-20160103- a96fcf70_symbols > foo.txt 2>&1 replacing the paths for the ones on your system. "foo.txt" will contain the processed dump. As with the dump_syms tool you can build minidump_stackwalk binary or try a precompiled binary

Using Windows to Process a Windows dump

You can also use the process explained above. However since we also store the pdb files you can use virtual studio to open the dump file, point it to the symbols folder and debug the code from there.

Clone this wiki locally