# Jetzig (and http.zig) with zig 0.16

**URL:** <https://ziggit.dev/t/jetzig-and-http-zig-with-zig-0-16/15229>\
**Category:** Help\
**Tags:** web\
**Created:** [April 29, 2026, 10:58am UTC](https://ziggit.dev/t/jetzig-and-http-zig-with-zig-0-16/15229 "2026-04-29T10:58:09Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![gonzo](https://ziggit.dev/user_avatar/ziggit.dev/gonzo/32/54_2.png) [@gonzo](https://ziggit.dev/u/gonzo)\
**Post date:** [April 29, 2026, 10:58am UTC](https://ziggit.dev/t/jetzig-and-http-zig-with-zig-0-16/15229/1 "2026-04-29T10:58:09Z")

</div>

I need to create a web HTTP API (it will live behind an nginx proxy, so plain HTTP is fine). I would love to use something like Jetzig – it seems appropriate for my purposes; however, I have been unable to make it run with zig 0.16.

The project’s web page says Jetzig tries to track zig master, but the last update was three months ago. Am I doing something obviously stupid, or has Jetzig not been updated to 0.16? And if the latter, are there any plans to update it?

---

<div class="post-metadata">

**Author:** ![cryptocode](https://ziggit.dev/user_avatar/ziggit.dev/cryptocode/32/817_2.png) [@cryptocode](https://ziggit.dev/u/cryptocode)\
**Post date:** [April 29, 2026, 11:05am UTC](https://ziggit.dev/t/jetzig-and-http-zig-with-zig-0-16/15229/2 "2026-04-29T11:05:21Z")

</div>

I don’t know the status of Jetzig, but it uses [http.zig](https://github.com/karlseguin/http.zig) behind the scenes, and that project is on 0.16. Maybe you can use http.zig directly if all you need is an http rest api behind a reverse proxy?

---

<div class="post-metadata">

**Author:** ![gonzo](https://ziggit.dev/user_avatar/ziggit.dev/gonzo/32/54_2.png) [@gonzo](https://ziggit.dev/u/gonzo)\
**Post date:** [April 29, 2026, 11:07am UTC](https://ziggit.dev/t/jetzig-and-http-zig-with-zig-0-16/15229/3 "2026-04-29T11:07:04Z")

</div>

Thanks for the suggestion @cryptocode , I will look into http.zig and report back.

---

<div class="post-metadata">

**Author:** ![mitteneer](https://ziggit.dev/user_avatar/ziggit.dev/mitteneer/32/4752_2.png) [@mitteneer](https://ziggit.dev/u/mitteneer)\
**Post date:** [April 29, 2026, 11:16am UTC](https://ziggit.dev/t/jetzig-and-http-zig-with-zig-0-16/15229/4 "2026-04-29T11:16:31Z")

</div>

Jetzig has some work to do. I’ve followed Jetzig for a while now, and it appears that the original dev stopped working on it around the release of 0.15, and now it’s being worked on by another person sort of on and off. So development seems to be continued, but slowly, and it’s unfortunatly not really usable. The current dev is active on the Jetzig Discord though, and seems to genuinely want to see Jetzig development continue, so hopefully it gets to a usable state again.

EDIT: None of this is hopefully seen as a knock on anyone who is/has worked on Jetzig, there’s a lot of work to be done getting it to 0.16, and I am very appreciative of the work @bobf and @cohors have done on it. Probably wouldn’t be doing much programming, let alone Zig programming, if not for Jetzig and their contributions 🙏

---

<div class="post-metadata">

**Author:** ![gonzo](https://ziggit.dev/user_avatar/ziggit.dev/gonzo/32/54_2.png) [@gonzo](https://ziggit.dev/u/gonzo)\
**Post date:** [April 29, 2026, 12:00pm UTC](https://ziggit.dev/t/jetzig-and-http-zig-with-zig-0-16/15229/5 "2026-04-29T12:00:57Z")

</div>

Ok, followed the instructions for httpz and am seeing these errors:

```zig
❯ zig build run
run
└─ run exe server
   └─ compile exe server Debug native 2 errors
error: fatal linker error: unhandled relocation type R_X86_64_PC64 at offset 0x1c
    note: in /usr/lib/gcc/x86_64-pc-linux-gnu/15.2.1/../../../../lib/crt1.o:.sframe
error: fatal linker error: unhandled relocation type R_X86_64_PC64 at offset 0x2c
    note: in /usr/lib/gcc/x86_64-pc-linux-gnu/15.2.1/../../../../lib/crt1.o:.sframe
error: 2 compilation errors

```

My system:

```zig
OS: Arch Linux x86_64
Kernel: Linux 6.19.13-arch1-1
zig version: 0.16.0

```

This is my first try with 0.16, so I’m sure I’m holding it wrong. Happy to hear any advice. Cheers!

---

<div class="post-metadata">

**Author:** ![gonzo](https://ziggit.dev/user_avatar/ziggit.dev/gonzo/32/54_2.png) [@gonzo](https://ziggit.dev/u/gonzo)\
**Post date:** [April 29, 2026, 12:04pm UTC](https://ziggit.dev/t/jetzig-and-http-zig-with-zig-0-16/15229/6 "2026-04-29T12:04:00Z")

</div>

BTW, if I comment these lines out in my `build.zig`, the linker errors go away:

```zig
    // const httpz = b.dependency("httpz", .{
    // .target = target,
    // .optimize = optimize,
    // });

    const exe = b.addExecutable(.{
        .name = "server",
        .root_module = b.createModule(.{
            .root_source_file = b.path("src/main.zig"),
            .target = target,
            .optimize = optimize,
            .imports = &.{
                .{ .name = "server", .module = mod },
                // .{ .name = "httpz", .module = httpz.module("httpz") },
            },
        }),
    });
    b.installArtifact(exe);

```

---

<div class="post-metadata">

**Author:** ![gonzo](https://ziggit.dev/user_avatar/ziggit.dev/gonzo/32/54_2.png) [@gonzo](https://ziggit.dev/u/gonzo)\
**Post date:** [April 29, 2026, 12:13pm UTC](https://ziggit.dev/t/jetzig-and-http-zig-with-zig-0-16/15229/7 "2026-04-29T12:13:49Z")

</div>

> [@gonzo](#):
>
> ```zig
> error: fatal linker error: unhandled relocation type R_X86_64_PC64 at offset 0x1c
> 
> ```

Following [https://codeberg.org/ziglang/zig/issues/31272](https://codeberg.org/ziglang/zig/issues/31272), if I compile with `--release=fast` the problem disappears.

---

<div class="post-metadata">

**Author:** ![gonzo](https://ziggit.dev/user_avatar/ziggit.dev/gonzo/32/54_2.png) [@gonzo](https://ziggit.dev/u/gonzo)\
**Post date:** [April 29, 2026, 12:31pm UTC](https://ziggit.dev/t/jetzig-and-http-zig-with-zig-0-16/15229/8 "2026-04-29T12:31:21Z")

</div>

Indeed, [http.zig](https://github.com/karlseguin/http.zig) is perfect for my needs. Thanks for the suggestion!
