Matthew Garrett on Nostr: Turns out that ldd doesn't run the rtld that's defined in the binary - it has a list ...
Turns out that ldd doesn't run the rtld that's defined in the binary - it has a list of rtlds it tries to run against the binary. If I'd read the output more closely I'd have seen:
/lib/ld-linux-x86-64.so.2 => /lib64/ld-linux-x86-64.so.2 (0x00007f0c656cd000)
The toolchain that built the binary set the rtld to a path in /lib, but ldd was reading it out of /lib64.The kernel only uses the built-in path, so we got ENOENT.
Published at
2025-01-15 00:22:32Event JSON
{
"id": "e9806ff8de7c7d036a9debfb4ae34470b3d5feeaad0d6e6e0328d6f54dba306a",
"pubkey": "ef5e80e6c74387ef14f5c6b89079f22b6847dc14365001c0ed662a20bd891677",
"created_at": 1736900552,
"kind": 1,
"tags": [
[
"e",
"c75444b7a72dd789f10e207f73226dca83fbfb013548a8bb669a1e7584d06733",
"wss://relay.mostr.pub",
"reply"
],
[
"proxy",
"https://nondeterministic.computer/users/mjg59/statuses/113829514605401467",
"activitypub"
]
],
"content": "Turns out that ldd doesn't run the rtld that's defined in the binary - it has a list of rtlds it tries to run against the binary. If I'd read the output more closely I'd have seen:\n\n/lib/ld-linux-x86-64.so.2 =\u003e /lib64/ld-linux-x86-64.so.2 (0x00007f0c656cd000)\n\nThe toolchain that built the binary set the rtld to a path in /lib, but ldd was reading it out of /lib64.The kernel only uses the built-in path, so we got ENOENT.",
"sig": "4dc9d8fbf195874d42be006657dda25046a2f496afbbe9437f1eb13f210b09d00bcbeec380b1c78d9e76be5a514ad976f1378b2cc73aaabcfd6fc3b2c197a457"
}