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

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.