Elf Crimes: Program Interpreter Fun
Key topics
Diving into the quirky world of ELF (Executable and Linkable Format) files, a discussion erupted around the frustrations and fascinations of debugging and manipulating these binaries. One commenter, dzdt, captured the sentiment with a vivid phrase: "It just radiates jank," conveying a mix of repulsion and attraction to the unorthodox methods employed. As the conversation unfolded, a debate emerged between delaminator, who lamented Linux's supposedly outdated debugging capabilities compared to Plan 9's Acid debugger, and quantummagic, who pushed back against this characterization as "needlessly snide and inaccurate." Meanwhile, practical suggestions were offered, such as using qemu and gdb for debugging, and even leveraging NixOS's patchelf tool, highlighting the community's resourcefulness in tackling ELF-related challenges.
Snapshot generated from the HN discussion
Discussion Activity
Moderate engagementFirst comment
28m
Peak period
7
0-3h
Avg / period
2.8
Based on 14 loaded comments
Key moments
- 01Story posted
Dec 21, 2025 at 11:30 AM EST
18 days ago
Step 01 - 02First comment
Dec 21, 2025 at 11:57 AM EST
28m after posting
Step 02 - 03Peak activity
7 comments in 0-3h
Hottest window of the conversation
Step 03 - 04Latest activity
Dec 23, 2025 at 3:58 AM EST
16 days ago
Step 04
Generating AI Summary...
Analyzing up to 500 comments to identify key contributors and discussion patterns
Want the full context?
Jump to the original sources
Read the primary article or dive into the live Hacker News thread when you're ready.
I think I would have eventually just loaded up a debugger and binary searched the codebase until I found the spot returning the error.
But I'm not a kernel dev and it's been a very long time since I would have needed to debug the kernel; does this not actually work?
Unless the other os and debugger mentioned has an easy way to do it with a machine that's not virtualized?
Plan 9’s debugger Acid can attach to a running kernel on a remote machine and debug it.
This is needlessly snide and inaccurate characterization.
> Plan 9’s debugger Acid can attach to a running kernel on a remote machine and debug it.
KGDB over Ethernet does the same on Linux.
I'm guessing you've never tried to write a terminal rendering program.
The hoops you hav to jump through to get vi to switch into a blank screen and then drop back and re-render your previous terminal.
Behaviour differences on some terminals when you run man and the previous output is simply cleared or the man page is printed and scrolled.
There are piles of hacks.
https://github.com/NixOS/patchelf