Features/ChangeInImplicitDSOLinking

From FedoraProject

< Features
Revision as of 20:56, 21 December 2009 by Poelstra (Talk | contribs)

Jump to: navigation, search

Contents

Change to the default behaviour of ld

Summary

Change the default behaviour of ld. Previously the ld command would default to --add-needed, the change would cause ld to default to --no-add-needed. This will prevent ld from automatically searching in the dependencies of linked objects.

Owner

  • Name: Charley Wang
  • E-mail: chwang@redhat.com

Current status

  • Targeted release: Fedora 13
  • Last updated: 2009-11-25
  • Percentage of completion: 50%
  • Mass builds: Have done test builds of ~4000 rpms so far with new ld. Incomplete list of ld-broken packages is at DSOLinkBugs

Detailed Description

Change the default behaviour of ld. Previously the ld command would default to --add-needed, the change would cause ld to default to --no-add-needed. This will prevent ld from automatically searching in the dependencies of linked objects.

Benefit to Fedora

As described in UnderstandingDSOLinkChange, the new default behaviour will help address potential problems further down the line if shared objects ever change their dependencies.

Scope

Changes the default behaviour of ld, which will affect compilation.

Test Plan

  1. Run mass mock builds, notify owners of packages that have problems under the new ld.

User Experience

Some packages and users writing programs may need to explicitly link shared objects if they have neglected to do so.

Dependencies

None

Contingency Plan

  • Continue without such capability.

Documentation

Description and example is up in UnderstandingDSOLinkChange

Release Notes

In Fedora 13, the the default behaviour of ld changed. Previously the ld command would default to --add-needed. Now ld to defaults to --no-add-needed.