logoalt Hacker News

Ninja is a small build system with a focus on speed

51 pointsby toshlast Friday at 10:23 AM14 commentsview on HN

Comments

ameliustoday at 2:30 PM

I can remember having to uninstall ninja temporarily because it messed with building packages. I only use it because other packages need it.

woctordhotoday at 8:12 AM

If someone sees this: The ninja package on PyPI [0] currently stays at version 1.13.0 . There is an issue in 1.13.0 preventing it building projects on Windows. The issue is already fixed in 1.13.1 almost a year ago, but the PyPI package hasn't got an update, see [1], and many downstream projects have to stay at 1.11 . I hope it could update soon.

[0] https://pypi.org/project/ninja/

[1] https://github.com/scikit-build/ninja-python-distributions/i...

show 2 replies
sluongngtoday at 1:27 PM

My teammate has a great time reimplementing Ninja (slop-free) in Go here https://github.com/buildbuddy-io/reninja to make it even faster with Remote Build Execution.

show 1 reply
shevy-javatoday at 9:58 AM

All the main build tools (cmake, meson/ninja and GNU configure) have different benefits. For instance, I expect "--help" to work, but only really GNU configure supports it as-is. I could list more advantages and disadvantages in general here, but by and large I prefer meson/ninja. To me it feels by far the fastest and I also have the fewest issues usually (excluding python breaking its pip stack but that's not the fault of meson as such). ninja can be used via cmake too but most uses I see are from meson.

show 1 reply
jonstewarttoday at 12:16 PM

The absolute best thing about coding agents is not having to waste time on build systems. I had Claude code port my autotools scripts to meson (which uses ninja) and it’s been a huge quality of life improvement.

show 1 reply
chmorgan_today at 12:40 PM

[dead]