gold (linker)

gold
Developer(s) Ian Lance Taylor
Written in C++
Operating system GNU
Platform x86, x86-64, ARM, PowerPC
Type Linker
License GNU General Public License version 3

gold is a linker for ELF files. It became an official GNU package[1] and was added to binutils on March, 2008[2][3] and first released in binutils version 2.19. Gold was developed by Ian Lance Taylor and a small team at Google.[4] The motivation for writing gold was to make a linker that is faster than the GNU linker,[4] especially for large applications coded in C++.

Unlike the GNU linker, gold doesn't use the BFD library to process object files. While this limits supported formats to ELF only, it's also claimed to result in a cleaner and faster implementation without an additional abstraction layer. Complete removal of BFD was cited as a reason to create a new linker from scratch rather than incrementally improve the GNU linker.[5]

To specify gold in makefile, set the LD environmental variable to ld.gold. To specify gold through a linker option, use an option like ld's -fuse-ld=gold. To specify gold through a compiler driver like GCC, use a command line option -Wl,-fuse-ld=gold.

See also

References

  1. "gold README". 2013-02-06. Retrieved 2013-03-06. It is a GNU program, and therefore follows the GNU formatting standards[...]
  2. "binutils cvs repository". Retrieved 2013-03-06.
  3. Ian Lance Taylor (2008-03-21). "New ELF linker code added to GNU binutils". binutils mailing list. Retrieved 2013-03-06.
  4. 1 2 Ian Lance Taylor (2008-04-04). "gold: Google Releases New and Improved GCC Linker". Google Open Source Blog.
  5. Ian Lance Taylor (2008). A New ELF Linker. GCC Developers' Summit 2008. pp. 129136. Retrieved 2013-03-06.

External links


This article is issued from Wikipedia - version of the Saturday, November 14, 2015. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.