ccls used to work perfectly for me in Emacs but at some point it stopped working and I have been unable to figure out why. When I open a new cc-mode buffer LSP :: Connected to [ccls:<pid>/starting]. is written to *Messages* with ccls always being in starting.
ccls is running and it doesn't crash as it keeps running with the same pid. I have set ccls-args to '("--log-file=/tmp/ccls.log") and lsp-log-io to t however /tmp/ccls.log is always empty, so are the *ccls* and *ccls::stderr* buffers.
lsp-doctor does not report any errors.
Checking for Native JSON support: OK
Check emacs supports `read-process-output-max': OK
Check `read-process-output-max' default has been changed from 4k: OK
Byte compiled against Native JSON (recompile lsp-mode if failing when Native JSON available): OK
`gc-cons-threshold' increased?: OK
Using gccemacs with emacs lisp native compilation (https://akrl.sdf.org/gccemacs.html): NOT AVAILABLE (OPTIONAL)
If I remove ccls from the path then lsp-mode will pick clangd instead and it will start indexing my code right away.
If I run ccls --index . at the root of my project ccls will start indexing it without issues.
*lsp-log: ccls:<pid>* contains the following (I replaced my project specific paths):
ccls used to work perfectly for me in Emacs but at some point it stopped working and I have been unable to figure out why. When I open a new
cc-mode
bufferLSP :: Connected to [ccls:<pid>/starting].
is written to*Messages*
withccls
always being instarting
.ccls
is running and it doesn't crash as it keeps running with the same pid. I have setccls-args
to'("--log-file=/tmp/ccls.log")
andlsp-log-io
tot
however/tmp/ccls.log
is always empty, so are the*ccls*
and*ccls::stderr*
buffers.lsp-doctor
does not report any errors.If I remove
ccls
from the path thenlsp-mode
will pickclangd
instead and it will start indexing my code right away.If I run
ccls --index .
at the root of my projectccls
will start indexing it without issues.*lsp-log: ccls:<pid>*
contains the following (I replaced my project specific paths):