Re: [uClinux-dev] elf2flt: ARM and PIC

From: Adrian von Bidder (avbidder@acter.ch)
Date: Tue Dec 04 2001 - 04:20:09 EST


Tom Walsh wrote:
> Adrian von Bidder wrote:

> > arm-uclinux-ld: hello.gdb: could not find output section .data for input
> > section .data
> > arm-uclinux-ld: final link failed: Nonrepresentable section on output
> 
> You know, whenever I see this part of your message (seen it several
> times now), I cannot help to think that the linker .ld file is missing a
> .data section specification.

I stared at the ld script a few hours yesterday and fiddled with it
because I was convinced the problem is with this. But in my opinion the
linker script should be working. [attached]

greets from Zürich
-- vbi

MEMORY {
        flatmem : ORIGIN = 0x0, LENGTH = 0x100000
}

SECTIONS {
        .text 0 : {
                . = ALIGN(0x4) ;
                _stext = . ;
				_start = . ;
                *(.text)
                *(.text.*)
                *(.glue_7)
                *(.glue_7t)
                *(.gnu.warning)
                *(.stub)
                *(.gnu.linkonce.t*)
                *(.init)
                . = ALIGN(0x10) ;
                _etext = . ;
        } > flatmem
        .data : {
                . = ALIGN(0x4) ;
                _sdata = . ;
				__data_start = . ;
				data_start = . ;
				*(.rela.got)
				*(.rel.got)
				*(.got.plt)
				*(.got)
				LONG(-1)
                *(.rodata)
                *(.rodata.*)
                *(.gnu.linkonce.r*)
                *(.rodata1)
                *(.data)
                *(.data.*)
                *(.gnu.linkonce.d*)
                *(.data1)
                *(.eh_frame)
                *(.gcc_except_table)
                *(.sdata) 
                *(.sdata.*)
                *(.gnu.linkonce.s.*)
				. = ALIGN(4) ;
				*(.ctors.*)
				*(.ctors)
				LONG(0)
				*(.dtors.*)
				*(.dtors)
				LONG(0)
                . = ALIGN(0x10) ;
                _edata = . ;
        } > flatmem
        .bss : {
                . = ALIGN(0x4) ;
                _sbss = ALIGN(0x4) ;
				__bss_start = . ;
                *(.dynsbss)
                *(.sbss)
                *(.sbss.*)
                *(.scommon)
                *(.dynbss)
                *(.bss)
                *(.bss.*)
                *(COMMON)
                . = ALIGN(0x4) ;
                _ebss = . ;
				_end = . ;
				end = . ;
        } > flatmem
}


This message resent by the uclinux-dev@uclinux.org list server http://www.uClinux.org/


This archive was generated by hypermail 2.1.4 : Thu Sep 19 2002 - 13:20:33 EDT