Poettering: Revisiting how we put together Linux systems
Poettering: Revisiting how we put together Linux systems
Posted Sep 3, 2014 21:52 UTC (Wed) by Trelane (subscriber, #56877)In reply to: Poettering: Revisiting how we put together Linux systems by mjthayer
Parent article: Poettering: Revisiting how we put together Linux systems
Posted Sep 3, 2014 22:03 UTC (Wed)
by zlynx (guest, #2285)
[Link] (6 responses)
This is because the static linker reads .a libraries and includes required .o files.
A badly put together static library has one, or just a few .o files in it. Using any function from the library pulls in all of the unrelated code as well.
Posted Sep 4, 2014 5:51 UTC (Thu)
by mjthayer (guest, #39183)
[Link] (5 responses)
Posted Sep 4, 2014 6:55 UTC (Thu)
by Wol (subscriber, #4433)
[Link] (1 responses)
Each time you loaded a library, it checked the list of unsatisfied functions in the program against the list of functions in the library, and pulled them across.
So if one library function referenced another function in the same library, you often had to load the library twice to satisfy the second reference.
I've often felt that was better than the monolithic "just link the entire library", but it does prevent the "shared library across processes" approach.
Cheers,
Posted Sep 4, 2014 7:20 UTC (Thu)
by mjthayer (guest, #39183)
[Link]
Posted Sep 4, 2014 14:14 UTC (Thu)
by nix (subscriber, #2304)
[Link] (2 responses)
Posted Sep 5, 2014 7:54 UTC (Fri)
by mjthayer (guest, #39183)
[Link] (1 responses)
Posted Sep 8, 2014 15:42 UTC (Mon)
by nix (subscriber, #2304)
[Link]
Poettering: Revisiting how we put together Linux systems
Poettering: Revisiting how we put together Linux systems
Poettering: Revisiting how we put together Linux systems
Wol
Poettering: Revisiting how we put together Linux systems
Poettering: Revisiting how we put together Linux systems
Poettering: Revisiting how we put together Linux systems
Poettering: Revisiting how we put together Linux systems