3.6.4.5 Input Section Example

The following example is a complete linker script. It tells the linker to read all of the sections from file all.o and place them at the start of output section ‘ outputa ’ which starts at location ‘ 0x10000 ’. All of section ‘ .input1 ’ from file foo.o follows immediately, in the same output section. All of section ‘ .input2 ’ from foo.o goes into output section ‘ outputb ’, followed by section ‘ .input1 ’ from foo1.o . All of the remaining ‘ .input1 ’ and ‘ .input2 ’ sections from any files are written to output section ‘ outputc ’.

     SECTIONS {
       outputa 0x10000 :
         {
         all.o
         foo.o (.input1)
         }
       outputb :
         {
         foo.o (.input2)
         foo1.o (.input1)
         }
       outputc :
         {
         *(.input1)
         *(.input2)
         }
     }