Post #4039759
2026-07-23 14:37 UTC
@MaddieM4@raphus.social I'm reminded of how libc was mostly written as one function per source file, yielding one function per object file, all collected into an archive file and the linker would only pull in the specific objects that a particular program needed.
That approach doesn't really do much for glibc these days; stuff like stdio depends on many other library functions so the minimum possible footprint is huge.
Replies (1)
-
@hyc@mastodon.social 2026-07-23 14:41
@MaddieM4@raphus.social AIX decided to improve on the Unix linker approach, all the functions and variables in an object file have explicitly encoded sizes and the linker can pull in exactly the functions it needs, instead of always using entire object files. Makes it less tedious to organize source code and removes the need to split to one function per file. Also the info is preserved in executables, and exes can be relinked against themselves and other objects.