Fedora 29 Might Make Change To Eliminate Unnecessary Linking
Yet another notable change proposal for Fedora 29 is to "remove excessive linking", which could help program start-up times, but may be too late for happening with the current Fedora Linux release cycle.
This change proposal is about always passing the "--as-needed" flag by default to the linker as part of the LDFLAGS. The "--as-needed" flag informs the linker to only link the libraries containing symbols used by the executable/library being linked. If a library trying to be linked against a binary isn't used, it won't end up being linked, which could be helpful particularly for large frameworks.
By being able to avoid unnecessary linking, it's possible to improve startup times by not needing to load as many libraries while also yielding smaller metadata.
The problem with this change though for the current cycle (F29) is that this change would require a mass rebuild of all packages. The deadline for changes requiring mass rebuilds was in mid-June. We'll see how the FESCo committee acts on this ticket if they will let it through or decide to postpone it until Fedora 30.
Their plans anyhow can be found via this Wiki page.
This change proposal is about always passing the "--as-needed" flag by default to the linker as part of the LDFLAGS. The "--as-needed" flag informs the linker to only link the libraries containing symbols used by the executable/library being linked. If a library trying to be linked against a binary isn't used, it won't end up being linked, which could be helpful particularly for large frameworks.
By being able to avoid unnecessary linking, it's possible to improve startup times by not needing to load as many libraries while also yielding smaller metadata.
The problem with this change though for the current cycle (F29) is that this change would require a mass rebuild of all packages. The deadline for changes requiring mass rebuilds was in mid-June. We'll see how the FESCo committee acts on this ticket if they will let it through or decide to postpone it until Fedora 30.
Their plans anyhow can be found via this Wiki page.
98 Comments