From Fedora Project Wiki
No edit summary |
No edit summary |
||
Line 2: | Line 2: | ||
[[Features/ChangeInImplicitDSOLinking |Implicit DSO Linking ]] | [[Features/ChangeInImplicitDSOLinking |Implicit DSO Linking ]] | ||
Key points: | |||
# ld will no longer automatically search in the dependencies of linked objects. | |||
# If your project used both A and B, it will not compile unless A and B are both explicitly linked. | |||
# There are more explanations on the Features page. | |||
Under the new changes, if your package fails ti build with a message like: | |||
/usr/bin/ld: gpx-parser.o: undefined reference to symbol 'acos@@GLIBC_2.0' | |||
/usr/bin/ld: note: 'acos@@GLIBC_2.0' is defined in DSO /lib/libm.so.6 so try adding it to the linker command line | |||
Then you the line that builds the specified .o needs to explicitly link libm. | |||
More examples are [[UnderstandingDSOLinkChange |here]] | |||
<noinclude>[[Category:Release Notes]]<noinclude> | <noinclude>[[Category:Release Notes]]<noinclude> | ||
[[Category:Documentation_beats]] | [[Category:Documentation_beats]] |
Revision as of 17:12, 10 March 2010
Implicit DSO Linking Key points:
- ld will no longer automatically search in the dependencies of linked objects.
- If your project used both A and B, it will not compile unless A and B are both explicitly linked.
- There are more explanations on the Features page.
Under the new changes, if your package fails ti build with a message like:
/usr/bin/ld: gpx-parser.o: undefined reference to symbol 'acos@@GLIBC_2.0' /usr/bin/ld: note: 'acos@@GLIBC_2.0' is defined in DSO /lib/libm.so.6 so try adding it to the linker command line
Then you the line that builds the specified .o needs to explicitly link libm.
More examples are here