j
: Next unread message k
: Previous unread message j a
: Jump to all threads
j l
: Jump to MailingList overview
Hi Blue Swirl,
First, you need binutils and gcc. For cross compiling I'd recommend sparc64-elf target, then you avoid a lot of unneeded Linux headers/libgcc stuff. At least binutils 2.18 and gcc 4.2.4 build working binaries. I still don't have a working cross gdb for Sparc64, the obvious configuration (--target=sparc64-elf) doesn't work.
I now have a cross-compile environment setup after a lot of effort. The hardest part was building a cross-gdb for Sparc64 as all I ever received was the "Reply packet too long error".
I ended up spending about half a day going through the gdb sources until I found that unless you specify a platform with configure when you come to build gdb, the extra 64-bit register sets don't get built in!
In the end, I went for "./configure --target=sparc64-linux" and magically everything started to work. If I build and install the non-stripped Sparc64 OpenBIOS built-in image, I can then do this:
qemu-system-sparc64 .... -s -S sparc64-linux-gdb
(gdb) file openbios-sparc64 Reading symbols from openbios-sparc64...done. (gdb) break openbios Breakpoint 1 at 0xffd0d014: file arch/sparc64/openbios.c, line 516. (gdb) target remote :1234 Remote debugging using :1234 [New Thread 1] 0x000001fff0000020 in ?? () (gdb) cont Continuing.
Breakpoint 1, openbios () at arch/sparc64/openbios.c:516 516 const struct hwdef *hwdef = NULL;
Cool :)
ATB,
Mark.
On 1/22/09, Mark Cave-Ayland mark.cave-ayland@siriusit.co.uk wrote:
Hi Blue Swirl,
First, you need binutils and gcc. For cross compiling I'd recommend sparc64-elf target, then you avoid a lot of unneeded Linux headers/libgcc stuff. At least binutils 2.18 and gcc 4.2.4 build working binaries. I still don't have a working cross gdb for Sparc64, the obvious configuration (--target=sparc64-elf) doesn't work.
I now have a cross-compile environment setup after a lot of effort. The hardest part was building a cross-gdb for Sparc64 as all I ever received was the "Reply packet too long error".
I ended up spending about half a day going through the gdb sources until I found that unless you specify a platform with configure when you come to build gdb, the extra 64-bit register sets don't get built in!
In the end, I went for "./configure --target=sparc64-linux" and magically everything started to work. If I build and install the non-stripped Sparc64 OpenBIOS built-in image, I can then do this:
Thanks, that was the trick! Now I also have a working cross gdb for Sparc64.