Menu

Post image 1
Post image 2
Post image 3
Post image 4
1 / 4
0

GitHub - pg83/solo: Portable Linux binaries, solved

Hacker News·about 1 month ago
#fU1PzcqQ
#github#linux#glibc#musl#vulkan#article
Reading 0:00
15s threshold

SoLo — a .so loader for static Linux binaries Ship one musl-linked executable. At runtime, load the user's existing glibc-linked GPU driver. No container, no AppImage, and no second libc in the process. Static binaries are a wonderfully boring way to deploy software on Linux: one file, no dependencies, nothing to break. We build ours with IX , a source-first build system for producing fully static Linux binaries. The boredom ends the moment the application needs the GPU: Vulkan and OpenGL drivers are supplied by the host as shared objects, usually built against glibc, and a fully static musl binary cannot normally dlopen() them. SoLo crosses that boundary. It provides a dlfcn -style source API backed by its own ELF loader (x86-64 and aarch64) and a glibc ABI bridge implemented on top of musl. The result is still one ordinary static executable, but it can use the graphics driver already installed on the machine.…

Continue reading — create a free account

Join HashtagPLUS to read full articles, follow hashtags, vote, and join the conversation.

Read More