camkes-manifest project make failed for arm
When I make the project, it said that: /home/talos/camkes-manifest/kernel/src/arch/arm/32/traps.S: Assembler messages: /home/talos/camkes-manifest/kernel/src/arch/arm/32/traps.S:56: Error: missing ')' /home/talos/camkes-manifest/kernel/src/arch/arm/32/traps.S:56: Error: garbage following instruction -- `ldr sp,=kernel_stack_alloc+(1ul<<(12))' /home/talos/camkes-manifest/kernel/src/arch/arm/32/traps.S:82: Error: missing ')' /home/talos/camkes-manifest/kernel/src/arch/arm/32/traps.S:82: Error: garbage following instruction -- `ldr sp,=kernel_stack_alloc+(1ul<<(12))' /home/talos/camkes-manifest/kernel/src/arch/arm/32/traps.S:117: Error: missing ')' /home/talos/camkes-manifest/kernel/src/arch/arm/32/traps.S:117: Error: garbage following instruction -- `ldr sp,=kernel_stack_alloc+(1ul<<(12))' /home/talos/camkes-manifest/kernel/src/arch/arm/32/traps.S:128: Error: missing ')' /home/talos/camkes-manifest/kernel/src/arch/arm/32/traps.S:128: Error: garbage following instruction -- `ldr sp,=kernel_stack_alloc+(1ul<<(12))' /home/talos/camkes-manifest/kernel/src/arch/arm/32/traps.S:168: Error: missing ')' /home/talos/camkes-manifest/kernel/src/arch/arm/32/traps.S:168: Error: garbage following instruction -- `ldr sp,=kernel_stack_alloc+(1ul<<(12))' /home/talos/camkes-manifest/kernel/src/arch/arm/32/traps.S:185: Error: missing ')' /home/talos/camkes-manifest/kernel/src/arch/arm/32/traps.S:185: Error: garbage following instruction -- `ldr sp,=kernel_stack_alloc+(1ul<<(12))' /home/talos/camkes-manifest/kernel/src/arch/arm/32/traps.S:213: Error: missing ')' /home/talos/camkes-manifest/kernel/src/arch/arm/32/traps.S:213: Error: garbage following instruction -- `ldr sp,=kernel_stack_alloc+(1ul<<(12))' /home/talos/camkes-manifest/kernel/Makefile:653: recipe for target 'src/arch/arm/32/traps.o' failed make[1]: *** [src/arch/arm/32/traps.o] Error 1 tools/common/project.mk:258: recipe for target 'kernel_elf' failed make: *** [kernel_elf] Error 2 But I make successfully for x86 What's matter? Thanks!
Hi Talos,
This might be because of this change [1] to the kernel. Since this change has passed on our local machines, I'd be interested to know which toolchain version are you using (specifically binutils)?
[1] https://github.com/seL4/seL4/commit/1930cf2e44908cb8faa5b315651bdb1958102f8f
Cheers,
Hesham
________________________________
From: Devel
Hi Talos,
Thanks for reporting this. It seems like it’s an issue with KZM (ARMv6) targets which I assume you’re using? I submitted a fix, should be public on GitHub soon. Meanwhile, you can use the following patch to get around this error.
diff --git a/include/util.h b/include/util.h
index d6afdbb..4b05430 100644
--- a/include/util.h
+++ b/include/util.h
@@ -11,7 +11,6 @@
#ifndef __UTIL_H
#define __UTIL_H
-#define BIT(n) (1ul << (n))
#define MASK(n) (BIT(n)-1ul)
#define IS_ALIGNED(n, b) (!((n) & MASK(b)))
#define ROUND_DOWN(n, b) (((n) >> (b)) << (b))
@@ -23,6 +22,7 @@
#ifndef __ASSEMBLER__
#define NULL ((void *)0)
+#define BIT(n) (1ul << (n))
#define PACKED __attribute__((packed))
#define NORETURN __attribute__((__noreturn__))
@@ -131,6 +131,10 @@ CONST popcountl(unsigned long x)
}
#define POPCOUNTL(x) __builtin_popcountl(x)
+#else /* __ASSEMBLER__ */
+
+
+#define BIT(n) (1 << (n))
Cheers,
Hesham
On 2 Jun 2017, at 10:41 am, Hesham.Almatary@data61.csiro.aumailto:Hesham.Almatary@data61.csiro.au wrote:
Hi Talos,
This might be because of this change [1] to the kernel. Since this change has passed on our local machines, I'd be interested to know which toolchain version are you using (specifically binutils)?
[1] https://github.com/seL4/seL4/commit/1930cf2e44908cb8faa5b315651bdb1958102f8f
Cheers,
Hesham
________________________________
From: Devel
participants (2)
-
Hesham.Almatary@data61.csiro.au
-
talos