View all comments ➔Show context ➔
  • If compilation takes more than a few single-digit seconds, IME, it breaks the development flow when you’re working on small fixes.

    • Having worked on large C++ projects, the solution to this issue is using a good IDE with an LSP. But it is quite a regrettable situation because setting up an LSP can be a difficult, and they also tend to break quite easily. Understanding how to make an LSP work is an important productivity skill in those kinds of positions.

      • And ccache or ninja. Something that reduces the amount of stuff that has be rebuilt.

        • Interesting, I had never heard of ccache before, though yes, all good build systems (CMake, Ninja, etc.) should cache intermediate object files.

          But the projects I was working on were so large that even binary and unit test executables were so large that even they would take ~20 seconds to link. You can’t use caching to alleviate that buildtime cost unfortunately.