Fiasco-UX build problem

Adam Lackorzynski adam at os.inf.tu-dresden.de
Thu Jan 27 16:49:54 CET 2005


On Thu Jan 27, 2005 at 14:06:29 +0100, Stefan K. wrote:
> First i got the following error:
> ...
> make[3]: Entering directory 
> `/home/sk852421/Documents/uni/OS/Fiasco-UX/oskit/examples'
> ld -Ttext 100000  -L../lib \
>         -o multiboot ../lib/multiboot.o multiboot.o             \
>         -lkern -lmc 
> -llmm ../lib/crtn.o /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.5/libgcc.a
> ld -Ttext 100000  -L../lib \
>         -o multiboot-gdb ../lib/multiboot.o multiboot-gdb.o             \
>         -lkern -lmc 
> -llmm ../lib/crtn.o /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.5/libgcc.a
> ld -Ttext 100000  -L../lib \
>         -o multiboot-smp ../lib/multiboot.o multiboot-smp.o             \
>         -lsmp -lkern -lmc 
> -llmm ../lib/crtn.o /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.5/libgcc.a
> ../lib/libsmp.a(boot.o)(.text+0x29): In function `_SMP_TRAMP_START_':
> : relocation truncated to fit: R_386_16 _SMP_TRAMP_32_ENTRY_
> make[3]: *** [multiboot-smp] Error 1
> make[3]: Leaving directory 
> `/home/sk852421/Documents/uni/OS/Fiasco-UX/oskit/examples'
> make[2]: *** [examples/all.MAKE] Error 2
> make[2]: Leaving directory `/home/sk852421/Documents/uni/OS/Fiasco-UX/oskit'
> make[1]: *** [all] Error 2
> make[1]: Leaving directory `/home/sk852421/Documents/uni/OS/Fiasco-UX/oskit'
> make: *** [../oskit] Error 2

Last time I had this (or something quite similar) with FC3 I installed
new binutils and gcc (2.15 and 3.4.something) and it worked then.
Don't know why distribution compilers don't like this.

> here is the full output:
> http://www.inf.tu-dresden.de/~sk852421/fiasco/make.out2
> 
> After that I choosed i586 instead of K7 (i'm using athlon xp) and i could 

Looks like a typo in the build system, hopefully fixed.

> build the whole environment, but now i wanna compile Fiasco-UX and it fails 
> every time:

> ...
> g++ -c -MD -D_GNU_SOURCE 
> -include /home/sk852421/Documents/uni/OS/Fiasco-UX/l4/kernel/fiasco/src/kern/ux/format.h 
> -I/home/sk852421/Documents/uni/OS/Fiasco-UX/l4/kernel/fiasco/src/types/ux 
> -I/home/sk852421/Documents/uni/OS/Fiasco-UX/l4/kernel/fiasco/src/types 
> -I/home/sk852421/Documents/uni/OS/Fiasco-UX/l4/kernel/fiasco/src/drivers/ux 
> -I/home/sk852421/Documents/uni/OS/Fiasco-UX/l4/kernel/fiasco/src/drivers 
> -I/home/sk852421/Documents/uni/OS/Fiasco-UX/l4/kernel/fiasco/src/kern/ux 
> -I/home/sk852421/Documents/uni/OS/Fiasco-UX/l4/kernel/fiasco/src/kern/shared 
> -I/home/sk852421/Documents/uni/OS/Fiasco-UX/l4/kernel/fiasco/src/kern 
> -I/home/sk852421/Documents/uni/OS/Fiasco-UX/l4/kernel/fiasco/src/lib/libk/ux 
> -I/home/sk852421/Documents/uni/OS/Fiasco-UX/l4/kernel/fiasco/src/lib/libk 
> -I/home/sk852421/Documents/uni/OS/Fiasco-UX/l4/kernel/fiasco/src/lib/amm 
> -I/home/sk852421/Documents/uni/OS/Fiasco-UX/l4/kernel/fiasco/src/lib/lmm 
> -I/home/sk852421/Documents/uni/OS/Fiasco-UX/l4/kernel/fiasco/src/lib/disasm 
> -I/home/sk852421/Documents/uni/OS/Fiasco-UX/l4/kernel/fiasco/src/lib/perfctr 
> -I/home/sk852421/Documents/uni/OS/Fiasco-UX/l4/kernel/fiasco/src/lib/regex 
> -I. -Iauto  -fno-implement-inlines -finline-limit=10000 
> -mpreferred-stack-boundary=2 -march=i586 -fno-defer-pop -freg-struct-return 
> -g -Wall -Wformat=2  -ffunction-sections -W -frename-registers 
> -fomit-frame-pointer -gstabs+ -fno-rtti -fno-exceptions   -O2 
> auto/thread-ipc2-v4.cc -o thread-ipc2-v4.o
>   ... Making kernel_thread.o
> g++ -c -MD -D_GNU_SOURCE 
> -include /home/sk852421/Documents/uni/OS/Fiasco-UX/l4/kernel/fiasco/src/kern/ux/format.h 
> -I/home/sk852421/Documents/uni/OS/Fiasco-UX/l4/kernel/fiasco/src/types/ux 
> -I/home/sk852421/Documents/uni/OS/Fiasco-UX/l4/kernel/fiasco/src/types 
> -I/home/sk852421/Documents/uni/OS/Fiasco-UX/l4/kernel/fiasco/src/drivers/ux 
> -I/home/sk852421/Documents/uni/OS/Fiasco-UX/l4/kernel/fiasco/src/drivers 
> -I/home/sk852421/Documents/uni/OS/Fiasco-UX/l4/kernel/fiasco/src/kern/ux 
> -I/home/sk852421/Documents/uni/OS/Fiasco-UX/l4/kernel/fiasco/src/kern/shared 
> -I/home/sk852421/Documents/uni/OS/Fiasco-UX/l4/kernel/fiasco/src/kern 
> -I/home/sk852421/Documents/uni/OS/Fiasco-UX/l4/kernel/fiasco/src/lib/libk/ux 
> -I/home/sk852421/Documents/uni/OS/Fiasco-UX/l4/kernel/fiasco/src/lib/libk 
> -I/home/sk852421/Documents/uni/OS/Fiasco-UX/l4/kernel/fiasco/src/lib/amm 
> -I/home/sk852421/Documents/uni/OS/Fiasco-UX/l4/kernel/fiasco/src/lib/lmm 
> -I/home/sk852421/Documents/uni/OS/Fiasco-UX/l4/kernel/fiasco/src/lib/disasm 
> -I/home/sk852421/Documents/uni/OS/Fiasco-UX/l4/kernel/fiasco/src/lib/perfctr 
> -I/home/sk852421/Documents/uni/OS/Fiasco-UX/l4/kernel/fiasco/src/lib/regex 
> -I. -Iauto  -fno-implement-inlines -finline-limit=10000 
> -mpreferred-stack-boundary=2 -march=i586 -fno-defer-pop -freg-struct-return 
> -g -Wall -Wformat=2  -ffunction-sections -W -frename-registers 
> -fomit-frame-pointer -gstabs+ -fno-rtti -fno-exceptions   -O2 
> auto/kernel_thread.cc -o kernel_thread.o
> /home/sk852421/Documents/uni/OS/Fiasco-UX/l4/kernel/fiasco/src/kern/kernel_thread.cpp:104: 
> error: parse
>    error before `)' token
> /home/sk852421/Documents/uni/OS/Fiasco-UX/l4/kernel/fiasco/src/kern/kernel_thread.cpp:113: 
> error: ISO
>    C++ forbids declaration of `init_switch_time' with no type

I guess some preprocessing got it wrong.
Go to the build directory and do "make kernel_thread.i" and then look at
kernel_thread.i at the place where the error comes from. For me, it looks
something like this:

__attribute__ ((noinline)) __attribute__ ((noreturn))
void
Kernel_thread::run()
{ 
  free_initcall_section();


  

  Context::init_switch_time();



Should be similar/equal for you.



Adam
-- 
Adam                 adam at os.inf.tu-dresden.de
  Lackorzynski         http://os.inf.tu-dresden.de/~adam/




More information about the l4-hackers mailing list