<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- This file documents the GNU linker LD
(GNU Binutils)
version 2.25.

Copyright (C) 1991-2014 Free Software Foundation, Inc.

Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3
or any later version published by the Free Software Foundation;
with no Invariant Sections, with no Front-Cover Texts, and with no
Back-Cover Texts.  A copy of the license is included in the
section entitled "GNU Free Documentation License". -->
<!-- Created by GNU Texinfo 5.2, http://www.gnu.org/software/texinfo/ -->
<head>
<title>LD: Input Section Example</title>

<meta name="description" content="LD: Input Section Example">
<meta name="keywords" content="LD: Input Section Example">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="index.html#Top" rel="start" title="Top">
<link href="LD-Index.html#LD-Index" rel="index" title="LD Index">
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="Input-Section.html#Input-Section" rel="up" title="Input Section">
<link href="Output-Section-Data.html#Output-Section-Data" rel="next" title="Output Section Data">
<link href="Input-Section-Keep.html#Input-Section-Keep" rel="prev" title="Input Section Keep">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.indentedblock {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smallindentedblock {margin-left: 3.2em; font-size: smaller}
div.smalllisp {margin-left: 3.2em}
kbd {font-style:oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nocodebreak {white-space:nowrap}
span.nolinebreak {white-space:nowrap}
span.roman {font-family:serif; font-weight:normal}
span.sansserif {font-family:sans-serif; font-weight:normal}
ul.no-bullet {list-style: none}
-->
</style>


</head>

<body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">
<a name="Input-Section-Example"></a>
<div class="header">
<p>
Previous: <a href="Input-Section-Keep.html#Input-Section-Keep" accesskey="p" rel="prev">Input Section Keep</a>, Up: <a href="Input-Section.html#Input-Section" accesskey="u" rel="up">Input Section</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="LD-Index.html#LD-Index" title="Index" rel="index">Index</a>]</p>
</div>
<hr>
<a name="Input-Section-Example-1"></a>
<h4 class="subsubsection">3.6.4.5 Input Section Example</h4>
<p>The following example is a complete linker script.  It tells the linker
to read all of the sections from file <samp>all.o</samp> and place them at the
start of output section &lsquo;<samp>outputa</samp>&rsquo; which starts at location
&lsquo;<samp>0x10000</samp>&rsquo;.  All of section &lsquo;<samp>.input1</samp>&rsquo; from file <samp>foo.o</samp>
follows immediately, in the same output section.  All of section
&lsquo;<samp>.input2</samp>&rsquo; from <samp>foo.o</samp> goes into output section
&lsquo;<samp>outputb</samp>&rsquo;, followed by section &lsquo;<samp>.input1</samp>&rsquo; from <samp>foo1.o</samp>.
All of the remaining &lsquo;<samp>.input1</samp>&rsquo; and &lsquo;<samp>.input2</samp>&rsquo; sections from any
files are written to output section &lsquo;<samp>outputc</samp>&rsquo;.
</p>
<div class="smallexample">
<pre class="smallexample">SECTIONS {
  outputa 0x10000 :
    {
    all.o
    foo.o (.input1)
    }
</pre><pre class="smallexample">  outputb :
    {
    foo.o (.input2)
    foo1.o (.input1)
    }
</pre><pre class="smallexample">  outputc :
    {
    *(.input1)
    *(.input2)
    }
}
</pre></div>




</body>
</html>
