3 ms·
Make is fantastic at what it does well. These days, I would absolutely not use Make to compile code written in C, except for the smallest personal projects. It
by klodolph 4y ago
Make is fantastic at what it does well.
These days, I would absolutely not use Make to compile code written in C, except for the smallest personal projects. It is just too fussy to construct the Makefile correctly, in a way that you can get correct incremental builds. Nearly any other build system is better at building projects written in C, in the sense that it is easy & straightforward to get your build system to do correct incremental builds.
- EddySchauHai 4y agoAbsolutely! Basically every company I've worked with over the last couple years as a contractor followed this methodology and it's grown to be my default runner as it's language agnostic.
- properparity 4y ago> incremental builds I've found that to not matter that much these days - unless your projects is hundreds of thousands (or maybe millions even) of LOC, full builds are instant on modern machines.
- klodolph 4y agoThat's definitely not true for: - Most C++ or Rust projects - Medium size or larger C projects - Anything which is built with tools written in JavaScript (due to Node startup time overhead) Stuff where a full build is close enough to instant: - Most Java, C#, Go projects - Small C projects - Tiny/trivial C++ or Rust programs, or C++ programs written for embedded systems This is just my experience. YMMV.
- stjohnswarts 4y agoany sizeable rust or c++ project is gonna take a while to compile in my experience? I tend to break things off into libraries that are faster to compile. Some of my coworkers don't like it but they learn to deal (c++)
- klodolph 4y ago> I tend to break things off into libraries that are faster to compile. Yes, exactly. Incremental compilation! This is what Make is not good at.
- LtWorf 4y agoWith python or bash. Certainly not with c++
- UncleEntity 4y agoUnless your modern machine isn’t very powerful because you value food and rent more.
- cassepipe 4y agoAdvertisement time (not affiliated, just want to share the joy) : I personally use Xmake and try to advertise it every time I get the chance : FOSS, no DSL it's just Lua, dead simple yet featureful, and it is ninja fast, or at least claims to be I never bothered to check that out, it's fast enough for me. https://xmake.io/#/ https://xmake.io/#/