This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
At wit's end with linker...help please!
- From: Rick Mann <rmann at latencyzero dot com>
- To: binutils <binutils at sourceware dot org>
- Date: Tue, 30 Oct 2007 19:02:02 -0700
- Subject: At wit's end with linker...help please!
I have a file vectors.S that assembles to vector.o. My linker script
has a part:
. = ALIGN(4);
.text :
{
obj/start.o(.text);
src/Interrupts.o(.text);
*(.text);
. = ALIGN(4);
gVectorsStart = .;
KEEP (obj/vectors.o(.text));
gVectorsEnd = .;
}
vectors.o is:
$ arm-elf-objdump -d obj/vectors.o
obj/vectors.o: file format elf32-littlearm
Disassembly of section .text:
00000000 <vectors>:
0: e59ff018 ldr pc, [pc, #24] ; 20 <ResetHandlerAddr>
4: e1a00000 nop (mov r0,r0)
8: e1a00000 nop (mov r0,r0)
c: e1a00000 nop (mov r0,r0)
10: e1a00000 nop (mov r0,r0)
14: e1a00000 nop (mov r0,r0)
18: e1a00000 nop (mov r0,r0)
1c: e1a00000 nop (mov r0,r0)
00000020 <ResetHandlerAddr>:
20: 00000000 .word 0x00000000
But the output map shows that gVectorsStart/End have the same value:
0x80024a50 gVectorsStart = .
obj/vectors.o(.text)
0x80024a50 gVectorsEnd = .
Implying that my vector table is not being linked in.
Can someone tell me what I'm doing wrong? Thank you!!!
--
Rick