On Wed Jul 18, 2007 at 11:45:41 +0800, kashin Lin wrote:
¦b 2007/7/18¡AAdam Lackorzynski adam@os.inf.tu-dresden.de ¼¶¼g¡G
On Tue Jul 17, 2007 at 23:07:13 +0800, kashin Lin wrote:
2007/7/16, Adam Lackorzynski adam@os.inf.tu-dresden.de:
On Sun Jul 15, 2007 at 19:48:04 +0800, kashin Lin wrote:
2007/7/15, Adam Lackorzynski adam@os.inf.tu-dresden.de:
On Sun Jul 15, 2007 at 18:20:35 +0800, kashin Lin wrote: > when i issue make to build l4linux in directory l4linux-2.6/, > i got some error message:
Is this a clean tree?
sorry, what does "clean tree" mean?
I mean a freshly checked out tree.
i just make menuconfig in l4linux-2.6/ and then make it.
by the way, i want to ask : the "L4 tree build directory" option in l4linux menuconfig should be pointed to "the output directory of l4env" or "the output directory of fiasco" or both?
To the output directory of l4env.
kashin08@kashin08-desktop:~/L4Linux/L4_x86/l4linux-2.6$ make > CHK include/linux/version.h > CHK include/linux/utsrelease.h > CC arch/l4/kernel/asm-offsets.s > In file included from include/linux/irqflags.h:46, > from include/asm-l4/l4-arch/asm/system.h:507, > from include/asm-l4/l4-arch/asm/processor.h:18, > from include/asm-l4/i386-arch/asm/atomic.h:5, > from include/linux/crypto.h:20, > from arch/l4/kernel/asm-offsets.c:8: > include/asm-l4/l4-arch/asm/irqflags.h: in function > ¢®uraw_irqs_disabled_flags¢®v¢®G > include/asm-l4/l4-arch/asm/irqflags.h:168: Error¢®G
¢®uL4_IRQ_DISABLED¢®v
> not > declare > > In file included from include/asm-l4/l4-arch/asm/suspend.h:7, > from include/linux/suspend.h:5, > from arch/l4/kernel/asm-offsets.c:12: > include/asm-l4/i386-arch/asm/i387.h: in function
¢®usave_init_fpu¢®v¢®G
> include/asm-l4/i386-arch/asm/i387.h:101: Error¢®G
¢®ul4lx_fpu_enabled¢®v
not > declare > make[1]: *** [arch/l4/kernel/asm-offsets.s] Error 1 > make: *** [prepare0] Error 2 > > my gcc and g++ and make version are: > gcc 4.1.2 g++ 4.1.2 make 3.81
This is ok.
Is there a file include/asm/generic/irq.h in your tree? That's where L4_IRQ_DISABLED should be defined.
yes there is. i have tried to test the code (
include/asm-l4/l4-arch/asm/irqflags.h
),
and find the first #ifndef __ASSAMBLY__ is NOT fulfill, so it doesn't include the file file include/asm/generic/irq.h, but the second #ifndef
__ASSAMBLY__ is
fulfill...
Hmm, please do a make V=1 to see the command line how the asm-offset is built. Maybe there's a difference.
here is the message when i do a "make V=1", but i don't understand what
it
says. are there any problems? it seems that the problem still exists.
kashin08@kashin08-desktop:~/L4Linux/L4_x86/l4linux-2.6$ make V=1
rm -f include/config/kernel.release echo 2.6.21-l4 > include/config/kernel.release set -e; echo ' CHK include/linux/version.h'; mkdir -p include/linux/; (echo #define LINUX_VERSION_CODE 132629; echo
'#define
KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c))';) < /home/kashin08/L4Linux/L4_x86/l4linux-2.6/Makefile > include/linux/version.h.tmp; if [ -r include/linux/version.h ] && cmp -s include/linux/version.h include/linux/version.h.tmp; then rm -f include/linux/version.h.tmp; else echo ' UPD
include/linux/version.h';
mv -f include/linux/version.h.tmp include/linux/version.h; fi CHK include/linux/version.h set -e; echo ' CHK include/linux/utsrelease.h'; mkdir -p include/linux/; if [ `echo -n "2.6.21-l4" | wc -c ` -gt 64 ]; then echo
'"
2.6.21-l4" exceeds 64 characters' >&2; exit 1; fi; (echo #define UTS_RELEASE "2.6.21-l4";) < include/config/kernel.release > include/linux/utsrelease.h.tmp; if [ -r include/linux/utsrelease.h ] &&
cmp
-s include/linux/utsrelease.h include/linux/utsrelease.h.tmp; then rm -f include/linux/utsrelease.h.tmp; else echo ' UPD include/linux/utsrelease.h'; mv -f include/linux/utsrelease.h.tmp include/linux/utsrelease.h; fi CHK include/linux/utsrelease.h mkdir -p .tmp_versions rm -f .tmp_versions/* make -f scripts/Makefile.build obj=scripts/basic mkdir -p arch/i386/lib make -f scripts/Makefile.build obj=. mkdir -p arch/l4/kernel/ gcc -m32 -Wp,-MD,arch/l4/kernel/.asm-offsets.s.d -nostdinc -isystem /usr/lib/gcc/i486-linux-gnu/4.1.2/include -D__KERNEL__
-Iinclude -include
include/linux/autoconf.h -Iinclude/asm-l4/l4-arch
-Iinclude/asm-l4/i386-arch
-Iinclude/asm-l4/i386-arch/asm/mach-default -I/home/kashin08/L4Linux/L4_x86/build/l4env/include/x86/l4v2 -I/home/kashin08/L4Linux/L4_x86/build/l4env/include/x86 -I/home/kashin08/L4Linux/L4_x86/build/l4env/include/l4v2 -I/home/kashin08/L4Linux/L4_x86/build/l4env/include -I/home/kashin08/L4Linux/L4_x86/l4/../dice/include -DCONFIG_L4_CALL_SYSCALLS -DCONFIG_L4_ABS_SYSCALLS -DL4API_l4v2 -I/home/kashin08/L4Linux/L4_x86/l4linux-2.6/arch/l4/idl -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -O2 -gstabs+ -pipe -msoft-float -DARCH_x86 -mpreferred-stack-boundary=2 -march=k8 -mtune=generic -ffreestanding -maccumulate-outgoing-args -fomit-frame-pointer -g -fno-stack-protector
-Wdeclaration-after-statement
-Wno-pointer-sign -D"KBUILD_STR(s)=#s" -D"KBUILD_BASENAME=KBUILD_STR(asm_offsets)" -D"KBUILD_MODNAME=KBUILD_STR(asm_offsets)" -fverbose-asm -S -o arch/l4/kernel/asm-offsets.s arch/l4/kernel/asm-offsets.c In file included from include/linux/irqflags.h:46, from include/asm-l4/l4-arch/asm/system.h:507, from include/asm-l4/l4-arch/asm/processor.h:18, from include/asm-l4/i386-arch/asm/atomic.h:5, from include/linux/crypto.h:20, from arch/l4/kernel/asm-offsets.c:8: include/asm-l4/l4-arch/asm/irqflags.h: in function ¡¸raw_irqs_disabled_flags¡¹£º include/asm-l4/l4-arch/asm/irqflags.h:168: Error£º ¡¸L4_IRQ_DISABLED¡¹ not declare
In file included from include/asm-l4/l4-arch/asm/suspend.h:7, from include/linux/suspend.h:5, from arch/l4/kernel/asm- offsets.c:12: include/asm-l4/i386-arch/asm/i387.h: in function
¡¸save_init_fpu¡¹£º
include/asm-l4/i386-arch/asm/i387.h:101: Error£º
¡¸l4lx_fpu_enabled¡¹
not declare make[1]: *** [arch/l4/kernel/asm-offsets.s] Error 1 make: *** [prepare0] Error 2
I still cannot see why it breaks for you. Works fine for me. Can you please do a 'make arch/l4/kernel/asm-offsets.i' and send me this asm-offsets.i file along with the .config file? Thanks.
after i do a "make arch/l4/kernel/asm-offsets.i", there is no file named " asm-offsets.i" been created. (why?)
Because it breaks when preprocessing. I should not have asked for the file, sorry.
the attached file is .config file.
Please disable the PARAVIRT, KEXEC, HPET_TIMER and MCA options. Then it should compile.
Adam