CJIT, a single-binary C compiler that can self host
Details
- External ID
- 47751458
- Source
- HN
- Company
- —
- Product
- CJIT, a single-binary C compiler that can self host
- Website domain
- dyne.org
- Launched
- April 13, 2026
- Cohort
- —
- Upvotes
- 7
- Upvotes percentile
- 0.38817480719794345
- Tags
- —
- Fetched at
- Sept. 7, 2026, 9:26 p.m.
- Updated at
- Sept. 7, 2026, 9:26 p.m.
Description
CJIT started as a hobby project around Fabrice Bellard’s tinyCC and slowly grew into something much more practical. It is now a small portable C compiler and runner that works across Linux, macOS, and Windows, can self host, and is packaged as a single executable.What mattered most to me was keeping the barrier to entry low. You can take one small binary, drop it onto a system, and compile or run C code using the libraries already available there, without setting up a full toolchain or installing a large stack of dependencies.I find that useful for quick prototyping, testing, auditing, learning, and generally exploring real systems with less friction. The codebase also reached a point where it feels solid and maintainable, not just experimental.It is still a small project, and I want to keep it that way: simple, useful, and easy to carry around.A fun extra: it works nicely with raylib as well.Interested in feedback from people here, especially on the single-binary approach and whether this kind of tool feels useful in practice.
Enrichment
- Theme
- lightweight and on-device AI runtimes
- Vertical
- Horizontal
- Function
- Dev tools
- Audience
- Developer
- AI stance
- Not AI
- Project type
- Hobby / open-source project
- Normalized one-liner
- self-hosting c compiler
- Manually corrected
- False
Could you build this?
No Building a self-hosting C compiler and JIT engine packaged into a single cross-platform binary requires profound knowledge of compiler design, assembly, ABI standards, and platform-specific linkers.
What it would actually take: The architecture involves modifying or wrapping Fabrice Bellard's TinyCC with custom in-memory ELF/PE/Mach-O loaders and platform-specific syscall layers. The hard parts include writing low-level code generation for x86_64 and ARM64, implementing symbol resolution across dynamic libraries, and ensuring strict self-hosting bootstrapping. This demands specialized systems programming expertise in C, compiler internals, and architecture-specific ABIs.
Discussion
1 comment analyzed.
Competitors mentioned: TCC
Concerns raised: Unclear how it handles standard C libraries compared to TCC
Competitors
Other products that read as similar to this one — 318 launches clear the similarity bar, closest 8 shown.
Attention rank: #218 of 319 (itself plus its competitors, highest first — normalized so YC and Product Hunt are compared fairly).
Launched 165 days after the earliest competitor.
- Xcc700: Self-hosting mini C compiler for ESP32 (Xtensa) in 700 lines · hn · 2025-12-26 · 154 upvotes · similarity 0.62
- Cj–tiny no-deps JIT in C for x86-64 and ARM64 · hn · 2025-11-05 · 21 upvotes · similarity 0.59
- Mach · hn · 2026-06-08 · 32 upvotes · similarity 0.53
- Built a tiny interpreter from scratch in C to understand how they work · hn · 2025-11-12 · 5 upvotes · similarity 0.52
- I built a Cargo-like build tool for C/C++ · hn · 2026-04-09 · 177 upvotes · similarity 0.50
- btrc · hn · 2026-03-02 · 5 upvotes · similarity 0.50
- Micron: a high performance C++23 (re)implementation of Libc and the STL · hn · 2026-06-05 · 6 upvotes · similarity 0.49
- Cicada · hn · 2026-01-30 · 57 upvotes · similarity 0.49
Other launches for this product
- No other launches for this product.
Same idea, different domain
Nobody's really built a dev tools tool for Sales yet.