<div dir="ltr">Hi everyone,<div><br></div><div>I am trying to use vscode for cmake development and so far I have been only moderately successful.</div><div><br></div><div>I think I have most of the things right (including clangd and autocomplete) but I still have a few issues:</div><div><br></div><div>1. I am not able to configure vscode + cmake such that the project only rebuilds incrementally. As a consequence a tiny change retriggers compilation of the whole thing. Since I configured ccache I get close to 100% hits but this still takes ~1-2 minutes instead of a few seconds by using cmake -Ninja on the command line.</div><div>(I think) I have been careful to not trigger spurious stuff (e.g.)</div><div><br>    "cmake.generator": "Ninja",<br>    "cmake.clearOutputBeforeBuild": false,</div>    "cmake.configureOnEdit": false,<br>    "cmake.exportCompileCommandsFile": false,<br>    "cmake.autoSelectActiveFolder": false,<br>    "cmake.useCMakePresets": "never",<div><br></div><div>but to no avail ..</div><div><br></div><div>The other 2 may be related to my not investing the time to dig further until I have a proper solution to point 1. </div><div><br></div><div>2. I am not sure how to set the tests for easily pinpointing particular errors, running a single test through the IDE and fixing it inline. Maybe we are spoiled but our internal Google setup makes it very easy to do such things.</div><div><br></div><div>3. I am not sure how to set up the integrated debugger to have a clicky debugging nice setup. I have some old recollections circa VC++ 6.0 ish where these things were quite nice to navigate and I am hoping to </div><div><br></div><div>Some additional details that may be of relevanceL</div><div>A. I am on a Linux boc (and running through a remote connection from my mac laptop). </div><div>B. I am using a third-party project and I am making use of some MLIR side features to build stuff</div><div>together with LLVM. In particular:</div>    "cmake.sourceDirectory": "${workspaceFolder}/../llvm-project/llvm",<div>Note that this is not a problem in my CLI-only setup where things behave like I expect them<br><div><div><br></div><div>Does anyone know of a good setup I could replicate?</div><div><br></div><div>If you're replying to this, please +1 me in the conversation because email is hard.</div><div><br></div><div>Thanks much!</div><div><br></div>-- <br><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr">N</div></div></div></div></div>