Skip to content
0:00 / 0:00

#zig#staticlinking#dynamiclinking

2021: Year of the Linux Gaming Desktop - Andrew Kelley

Zig SHOWTIME

17K subscribers • 40 videos on Hallway

YouTube
  • Recommended by 4 people: 2 on Hacker News and 2 on Lobsters.
  • Presented by Andrew Kelley, creator of Zig
  • An opinion. It argues one side of a question engineers disagree on.

Advanced. Deep dive for people who know the field.

15K views5 years ago4 recommendations

Systems programmingGame developmentZigOperating systemsLinux

Andrew Kelley discusses the challenges of shipping static Linux executables for graphics and gaming, focusing on dynamic linking and the graphics ABI.

From Zig SHOWTIME #21 Subscribe to the Zig SHOWTIME Newsletter zig.show Title Talk Interview

Why it's here

4 people recommend this

What people say. Recommended for its insights into Linux binary compatibility, dynamic linking issues, and the challenges of static graphics binaries.

kristoffon Lobsters • Recommends

2021: Year of the Linux Gaming Desktop

jzelinskieon Lobsters • Recommends

Portable Linux Binaries for Video Games using Zig

ndesaulnierson Hacker News • Recommends

On “A proposal to start “llvm-libc” (2020)”

Andrew Kelley makes an interesting point in: link to this video about the PT_INTERP being hard-coded. That seems like a long ago assumption baked that binaries should only have one program interpreter per system. I don't know enough about configuring a system and the historical decisions around PT_INTERP, but I suspect Andrew is on to something.

Cloudefon Hacker News • Recommends

On “Building the DirectX shader compiler better than Microsoft?”

…reate static binaries for linux that work for eternity, thanks to kernel being actually stable. But link against something in /usr/lib and it all goes to hell. If the GPU drivers and libs that provided basic window / audio did not depend on libc and were standalone, the situation would be much better. Here's good video about this problem space btw link to this video…

u/EthanAlexEin r/C_Programming • Mentions

On “Calling dlopen from static binary”

Andrew Kelley (of the Zig programming language) did a presentation a while back where he managed to load Vulkan dynamically from a static executable. link to this video

AndyKelleyon Hacker News • Mentions

On “Fedora 38 LLVM vs. Team Fortress 2”

related: this talk that I made 2 years ago about an experiment to ship static executables on linux that could do graphics: link to this video

AndyKelleyon Hacker News • Mentions

On “Zed on Linux Is Here”

My interest is not in using this text editor as a consumer, but in guiding software development culture in general, particularly when it comes to installation of Linux applications. Some talks I have given on this topic: link to this video link So, I think "entitled" is the wrong insult. "arrogant" would be more accurate.

AndyKelleyon Hacker News • Mentions

On “Why Linux is not ready for the desktop, the final edition”

> Linux is not an operating system It is though. Go ahead and find me any distribution of Linux on which this binary of the Zig compiler does not work: link You can't, because it's a static executable whose only runtime dependencies are a file system. And if kernel devs would bless us with a stable graphics ABI, then we could do this for games, too. Unfortunately, the way drivers work currently relies on dynamic linking in a way that drags in a dependency on differences in distributions, which is completely unnecessary and maddening. Related: link to this video P.S. Just bought my wife a steam deck for christmas and she loves it.

u/skeetoin r/C_Programming • Mentions

On “Why doesn't C have an installable runtime for its standard library, like the JRE?”

Correct. A great, detailed talk about this very topic: 2021: Year of the Linux Gaming Desktop