Niels Nesse f959c84229 Minwin target il y a 9 ans
..
emulparams 886a250647 New ARC implementation. il y a 9 ans
emultempl 886a250647 New ARC implementation. il y a 9 ans
po efb068d302 Updated Chinese translation for the linker (again!) il y a 9 ans
scripttempl 886a250647 New ARC implementation. il y a 9 ans
testsuite 15a70cda97 Add test to ensure that ternary linker script operators copy symbol flags. il y a 9 ans
.gitignore 8b9a522f57 bfd/binutils/gas/gprof/ld/libiberty/opcodes: add .gitignore il y a 14 ans
ChangeLog 1283d92f0e Extend description of the --enable-compressed-debug-sections configure option in gas and ld. il y a 9 ans
ChangeLog-0001 752937aa0c Add copyright notices il y a 12 ans
ChangeLog-0203 752937aa0c Add copyright notices il y a 12 ans
ChangeLog-2004 752937aa0c Add copyright notices il y a 12 ans
ChangeLog-2005 752937aa0c Add copyright notices il y a 12 ans
ChangeLog-2006 752937aa0c Add copyright notices il y a 12 ans
ChangeLog-2007 752937aa0c Add copyright notices il y a 12 ans
ChangeLog-2008 594d8fa8e9 strip off +x bits on non-executable/script files il y a 11 ans
ChangeLog-2009 995da1ffa7 Remove trailing spaces in ld il y a 9 ans
ChangeLog-2010 752937aa0c Add copyright notices il y a 12 ans
ChangeLog-2011 752937aa0c Add copyright notices il y a 12 ans
ChangeLog-2012 4e5f3f9d1d Rotate binutils ChangeLog for 2013 il y a 12 ans
ChangeLog-2013 5fb776a637 New Year - binutils ChangeLog rotation il y a 11 ans
ChangeLog-2014 b90efa5b79 ChangeLog rotatation and copyright year update il y a 10 ans
ChangeLog-9197 995da1ffa7 Remove trailing spaces in ld il y a 9 ans
ChangeLog-9899 752937aa0c Add copyright notices il y a 12 ans
MAINTAINERS b90efa5b79 ChangeLog rotatation and copyright year update il y a 10 ans
Makefile.am 886a250647 New ARC implementation. il y a 9 ans
Makefile.in 886a250647 New ARC implementation. il y a 9 ans
NEWS 6c3bc0f82c Reset x86 Linux targets to not compressing debug sections by default. Enable compression of debug sections by default in the linker, if so configured. il y a 9 ans
README b90efa5b79 ChangeLog rotatation and copyright year update il y a 10 ans
TODO 252b5132c7 19990502 sourceware import il y a 26 ans
aclocal.m4 443507505d * configure.in (AC_CHECK_FUNCS): Add setlocale. il y a 12 ans
config.in 6c3bc0f82c Reset x86 Linux targets to not compressing debug sections by default. Enable compression of debug sections by default in the linker, if so configured. il y a 9 ans
configure 1283d92f0e Extend description of the --enable-compressed-debug-sections configure option in gas and ld. il y a 9 ans
configure.ac 1283d92f0e Extend description of the --enable-compressed-debug-sections configure option in gas and ld. il y a 9 ans
configure.host 995da1ffa7 Remove trailing spaces in ld il y a 9 ans
configure.tgt f959c84229 Minwin target il y a 9 ans
deffile.h b90efa5b79 ChangeLog rotatation and copyright year update il y a 10 ans
deffilep.y b90efa5b79 ChangeLog rotatation and copyright year update il y a 10 ans
dep-in.sed 67a648f17a * dep-in.sed: Don't use \n in replacement part of s command. il y a 15 ans
elf-hints-local.h e4492aa0d8 Remove trailing white spaces in ld il y a 12 ans
fdl.texi 9fbcbd8145 etc/ChangeLog il y a 14 ans
gen-doc.texi b90efa5b79 ChangeLog rotatation and copyright year update il y a 10 ans
genscrba.sh ac69cbc672 ld: il y a 17 ans
genscripts.sh b90efa5b79 ChangeLog rotatation and copyright year update il y a 10 ans
h8-doc.texi b90efa5b79 ChangeLog rotatation and copyright year update il y a 10 ans
ld.h c005eb9e34 ld: Extend options for altering orphan handling behaviour. il y a 9 ans
ld.texinfo 6c3bc0f82c Reset x86 Linux targets to not compressing debug sections by default. Enable compression of debug sections by default in the linker, if so configured. il y a 9 ans
ldbuildid.c b90efa5b79 ChangeLog rotatation and copyright year update il y a 10 ans
ldbuildid.h b90efa5b79 ChangeLog rotatation and copyright year update il y a 10 ans
ldcref.c b90efa5b79 ChangeLog rotatation and copyright year update il y a 10 ans
ldctor.c 0e1862bb40 Add output_type to bfd_link_info il y a 9 ans
ldctor.h b90efa5b79 ChangeLog rotatation and copyright year update il y a 10 ans
ldemul.c c005eb9e34 ld: Extend options for altering orphan handling behaviour. il y a 9 ans
ldemul.h b90efa5b79 ChangeLog rotatation and copyright year update il y a 10 ans
ldexp.c 1fb80d6d50 When evaluating a ternary operator in a linker script, copy the symbol flags. il y a 9 ans
ldexp.h 975f8a9e31 Delay converting linker script defined symbols from absolute il y a 9 ans
ldfile.c 0e1862bb40 Add output_type to bfd_link_info il y a 9 ans
ldfile.h b90efa5b79 ChangeLog rotatation and copyright year update il y a 10 ans
ldgram.y cc9ad334a7 Allow symbols in MEMORY region specification il y a 10 ans
ldint.texinfo 995da1ffa7 Remove trailing spaces in ld il y a 9 ans
ldlang.c 975f8a9e31 Delay converting linker script defined symbols from absolute il y a 9 ans
ldlang.h 0a61824343 ld: Add '--require-defined' command line option. il y a 9 ans
ldlex-wrapper.c b90efa5b79 ChangeLog rotatation and copyright year update il y a 10 ans
ldlex.h 9b8b325a1f Add --no-dynamic-linker option to ld, for static PIE use il y a 9 ans
ldlex.l a13eab064f Eat newlines inside INPUT statements in linker scripts il y a 9 ans
ldmain.c 6c3bc0f82c Reset x86 Linux targets to not compressing debug sections by default. Enable compression of debug sections by default in the linker, if so configured. il y a 9 ans
ldmain.h b90efa5b79 ChangeLog rotatation and copyright year update il y a 10 ans
ldmisc.c 7ac018954b Make binutils abort message GDB friendly il y a 9 ans
ldmisc.h b90efa5b79 ChangeLog rotatation and copyright year update il y a 10 ans
ldver.c efd321f91c Correct printed year in copyright notices il y a 10 ans
ldver.h b90efa5b79 ChangeLog rotatation and copyright year update il y a 10 ans
ldwrite.c 0e1862bb40 Add output_type to bfd_link_info il y a 9 ans
ldwrite.h b90efa5b79 ChangeLog rotatation and copyright year update il y a 10 ans
lexsup.c 6c3bc0f82c Reset x86 Linux targets to not compressing debug sections by default. Enable compression of debug sections by default in the linker, if so configured. il y a 9 ans
mri.c b90efa5b79 ChangeLog rotatation and copyright year update il y a 10 ans
mri.h b90efa5b79 ChangeLog rotatation and copyright year update il y a 10 ans
pe-dll.c 0e1862bb40 Add output_type to bfd_link_info il y a 9 ans
pe-dll.h b90efa5b79 ChangeLog rotatation and copyright year update il y a 10 ans
pep-dll.c b90efa5b79 ChangeLog rotatation and copyright year update il y a 10 ans
pep-dll.h b90efa5b79 ChangeLog rotatation and copyright year update il y a 10 ans
plugin.c 64d94ba01a Remove link_info.pic il y a 9 ans
plugin.h 35a1e5f305 Update plugin_maybe_claim il y a 10 ans
stamp-h.in 252b5132c7 19990502 sourceware import il y a 26 ans
sysdep.h b90efa5b79 ChangeLog rotatation and copyright year update il y a 10 ans
testplug.c 15f7a26b0f The initial support for LDPT_GET_VIEW il y a 10 ans
testplug2.c f58926a652 Add a testcase for PR ld/17973 il y a 10 ans
testplug3.c e3001fd920 Remove unused dump_tv_tag il y a 10 ans

README

README for LD

This is the GNU linker. It is distributed with other "binary
utilities" which should be in ../binutils. See ../binutils/README for
more general notes, including where to send bug reports.

There are many features of the linker:

* The linker uses a Binary File Descriptor library (../bfd)
that it uses to read and write object files. This helps
insulate the linker itself from the format of object files.

* The linker supports a number of different object file
formats. It can even handle multiple formats at once:
Read two input formats and write a third.

* The linker can be configured for cross-linking.

* The linker supports a control language.

* There is a user manual (ld.texinfo), as well as the
beginnings of an internals manual (ldint.texinfo).

Installation
============

See ../binutils/README.

If you want to make a cross-linker, you may want to specify
a different search path of -lfoo libraries than the default.
You can do this by setting the LIB_PATH variable in ./Makefile
or using the --with-lib-path configure switch.

To build just the linker, make the target all-ld from the top level
directory (one directory above this one).

Porting to a new target
=======================

See the ldint.texinfo manual.

Reporting bugs etc
===========================

See ../binutils/README.

Known problems
==============

The Solaris linker normally exports all dynamic symbols from an
executable. The GNU linker does not do this by default. This is
because the GNU linker tries to present the same interface for all
similar targets (in this case, all native ELF targets). This does not
matter for normal programs, but it can make a difference for programs
which try to dlopen an executable, such as PERL or Tcl. You can make
the GNU linker export all dynamic symbols with the -E or
--export-dynamic command line option.

HP/UX 9.01 has a shell bug that causes the linker scripts to be
generated incorrectly. The symptom of this appears to be "fatal error
- scanner input buffer overflow" error messages. There are various
workarounds to this:
* Build and install bash, and build with "make SHELL=bash".
* Update to a version of HP/UX with a working shell (e.g., 9.05).
* Replace "(. ${srcdir}/scripttempl/${SCRIPT_NAME}.sc)" in
genscripts.sh with "sh ${srcdir}..." (no parens) and make sure the
emulparams script used exports any shell variables it sets.

Copyright (C) 2012-2015 Free Software Foundation, Inc.

Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved.