[prev in list] [next in list] [prev in thread] [next in thread]
List: linux-arm-kernel
Subject: Re: TOOLCHAIN: 2.5.75 and .incbin
From: Jeff Sutherland <jeffs () netwinder ! org>
Date: 2003-07-12 13:49:07
[Download RAW message or body]
On Saturday 12 July 2003 09:51 am, Holger Schurig wrote:
> > Just wondering, but the binutils I am using (2.11.2) doesnt support
> > .incbin and it has snuck into 2.5.75.
>
> I'm at 2.11.2 as well (I downloaded the gcc-2.95.3 gcc from
> arm.linux.org.uk)
>
> For some external reasons I'm stuck to Mdk82 (which has a glibc-2.2.4) and
> therefore have trouble self-compiling a gcc-3.3 compiler. If some
> precompiled gcc-3.3 would be available somewhere, I'd switch. I think this
> could be true for a bunch of other people. This would make the transition
> to a newer binutils possible.
Man, you guys sure are doing a lot of work killing yourselves just for 2.95.3.
I've built binutils-2.13.2.1 (with a small patch), gcc-3.3, and glibc-2.3.2
(again with a small patch) and the latest 2.5.70-rmk1-pxa1 compiles out of
the box, no errors at all. I think if you guys are going to be doing
development with 2.5.x, maybe you should upgrade your tools as well. These
you can find on the net:
binutils-2.13.2.1
gcc-3.3
glibc-2.3.2-200304020432
As for a prebuilt toolchain, if I get enough requests from the list, I'll put
one someplace, built for an i386-pc-linux-gnu host, if there's sufficient
demand (I don't like to casually consume many megs of disk space)..
Here's a binutils patch and a glibc patch, then just follow the standard
config and install process (yeah, you still need the -Dinhibit_libc hack to
gcc for the first pass build).
-Jeff
--
Kodachrome: After nearly 70 years, there's still
no better way to preserve an image.
["binutils.patch" (text/x-diff)]
diff -BburN binutils-2.13.2.1-orig/ld/emultempl/armelf.em binutils-2.13.2.1/ld/emultempl/armelf.em
--- binutils-2.13.2.1-orig/ld/emultempl/armelf.em 2003-07-12 09:25:43.000000000 -0400
+++ binutils-2.13.2.1/ld/emultempl/armelf.em 2003-07-11 22:05:03.000000000 -0400
@@ -108,10 +108,16 @@
tem->output_has_begun = false;
lang_for_each_statement (arm_elf_set_bfd_for_interworking);
- ASSERT (bfd_for_interwork != NULL);
+/* ASSERT (bfd_for_interwork != NULL); */
for (tem = link_info.input_bfds; tem != NULL; tem = tem->link_next)
tem->output_has_begun = false;
+ /* If bfd_for_interwork is NULL, then there are no loadable sections
+ with real contents to be linked, so we are not going to have to
+ create any interworking stubs, so it is OK not to call
+ bfd_elf32_arm_get_bfd_for_interworking. */
+
+ if (bfd_for_interwork != NULL)
bfd_elf32_arm_get_bfd_for_interworking (bfd_for_interwork, &link_info);
}
/* We should be able to set the size of the interworking stub section. */
["ralphs.patch" (text/x-diff)]
--- linuxthreads/sysdeps/unix/sysv/linux/arm/sysdep-cancel.h.orig 2003-05-27 20:25:22.000000000 -0400
+++ linuxthreads/sysdeps/unix/sysv/linux/arm/sysdep-cancel.h 2003-05-27 20:07:12.000000000 -0400
@@ -26,12 +26,14 @@
/* We push lr onto the stack, so we have to use ldmib instead of ldmia
to find the saved arguments. */
+#ifdef PIC
#undef DOARGS_5
#undef DOARGS_6
#undef DOARGS_7
#define DOARGS_5 str r4, [sp, $-4]!; ldr r4, [sp, $8];
#define DOARGS_6 mov ip, sp; stmfd sp!, {r4, r5}; ldmib ip, {r4, r5};
#define DOARGS_7 mov ip, sp; stmfd sp!, {r4, r5, r6}; ldmib ip, {r4, r5, r6};
+#endif /* PIC */
# undef PSEUDO_RET
# define PSEUDO_RET
-------------------------------------------------------------------
Subscription options: http://lists.arm.linux.org.uk/mailman/listinfo/linux-arm-kernel
FAQ/Etiquette: http://www.arm.linux.org.uk/armlinux/mailinglists.php
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic