1
1
mirror of https://github.com/mawww/kakoune.git synced 2024-10-05 17:18:00 +03:00
4 Hacking
Johannes Altmanninger edited this page 2022-08-07 19:46:14 +02:00

C++ tooling setup

If you want to use Clang tools (e.g. clangd via kak-lsp) to hack on Kakoune's C++ sources. you'll need to create a compile_commands.json file so the Clang tool will use the correct build flags.

One solution is to wrap your make invocations with bear:

bear -- make debug=yes clean all

Another solution is to teach the build system to output compile_commands.json.

GDB

For debugging interactive scenarios that don't have tests yet you can usegdbserver:

gdbserver :2345 ./kak; reset

(If Kakoune crashes, it might not be able to reset terminal modes. The reset takes care of that.)

Then, connect to gdbserver from another terminal

gdb -ex 'target remote :2345'

Since this is a remote target, gdbserver will by default fail to pick up pretty printers (for both stdlib and Kakoune types). To fix this, add this to your ~/.gdbinit (or to src/.gdbinit):

    set sysroot