On 6/2/06, zhuzhenhua <zzh.hust@gmail.com> wrote:
On 6/1/06, Nigel Stephens <nigel@mips.com> wrote:
>
>
> zhuzhenhua wrote:
> > On 6/1/06, Thiemo Seufer <ths@networkno.de> wrote:
> >> zhuzhenhua wrote:
> >> > i have write a code to link at 0xa2000000(uncached address)
> >> > but when link i get the error as
> >> > "BFD: Warning: Writing section `.text' to huge (ie negative) file
> >> > offset 0xa1ffff10.
> >> > BFD: Warning: Writing section `.data' to huge (ie negative) file
> >> > offset 0xa200b050.
> >> > BFD: Warning: Writing section `.reginfo' to huge (ie negative) file
> >> > offset 0xa200c980.
> >> > mipsel-linux-objcopy: /root/project/brec_flash/release/brec_flash.bin:
> >> > File truncated
> >> > make: *** [brec_flash] Error 1"
> >> >
> >> > my link.xn as follow:
> >> >
> >> > OUTPUT_ARCH(mips)
> >> > ENTRY(brec_flash_entry)
> >> > SECTIONS
> >> > {
> >> > .text 0xa2000000 :
> >>
> >> Use
> >>
> >> . = 0xa2000000;
> >> .text :
> >>
> >> instead. "info ld" explains the subtle difference.
> >>
> >>
> >> Thiemo
> >>
> >
> > do you mean use
> > . = 0xa2000000;
> > .text :
> > to replace
> > .text 0xa2000000 :
> > ?
> > i modify as that, and it still get the same message
> >
>
> I think the problem is not with the linker, but in your use of objcopy
> to convert your ELF file to a raw binary file.
>
> 1) What arguments are you giving to mipsel-linux-objcopy?
i use objcopy as follow(the brec_flash is elf file)
mipsel-linux-objcopy -O binary brec_flash brec_flash.bin
>
> 2) What is the output from mipsel-linux-objdump -h run on your
> intermediate ELF object file?
i use mipsel-linux-objdump -h brec_flash and get messages as follow
brec_flash: file format elf32-tradlittlemips
Sections:
Idx Name Size VMA LMA File off Algn
0 .text 0000b140 72000000 72000000 00010000 2**4
CONTENTS, ALLOC, LOAD, READONLY, CODE
1 .data 00001080 7200b140 7200b140 0001b140 2**4
CONTENTS, ALLOC, LOAD, DATA
2 .sbss 00000010 7200c1c0 7200c1c0 0001c1c0 2**2
ALLOC
3 .bss 000008a0 7200c1d0 7200c1d0 0001c1c0 2**4
ALLOC
4 .reginfo 00000018 7200ca70 7200ca70 0001ca70 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA, LINK_ONCE_SAME_SIZE
5 .pdr 000011a0 00000000 00000000 0001ca88 2**2
CONTENTS, READONLY
6 .mdebug.abi32 00000000 00000000 00000000 0001dc28 2**0
CONTENTS, READONLY
7 .comment 000000ea 00000000 00000000 0001dc28 2**0
CONTENTS, READONLY
8 .rodata 00000190 000000f0 000000f0 000000f0 2**4
CONTENTS, ALLOC, LOAD, READONLY, DATA
9 .rodata.str1.4 000005fe 00000280 00000280 00000280 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
the 0x72xxxxxx should be 0xa2xxxxxx, because i can't pass by set
0xa2000000,so i change the .text to 0x72000000, and it can get the
.bin correctly.
>
>
> Nigel
>
> --
> Nigel Stephens e. nigel@mips.com
> MIPS Technologies p. +44 1223 203110
> Building 7200 f. +44 1223 203181
> Cambridge Research Park m. +44 7976 686470
> Beach Road, Waterbeach w. http://www.mips.com
> Cambridge CB5 9TL, UK
>
>
|