About build of L4Linux

林和宏 bugeaterk at gmail.com
Sat Jul 7 22:35:21 CEST 2007


I am a university student in japan.
I have a question about an error in building L4Linux 2.6.

I want to run L4Linux with L4Ka::Pistachio on an IA32 architecture machine.
I got a following error when I tried to make L4Linux.

  LD      .tmp_vmlinux1
  KSYM    .tmp_kallsyms1.S
  AS      .tmp_kallsyms1.o
  LD      .tmp_vmlinux2
  KSYM    .tmp_kallsyms2.S
  AS      .tmp_kallsyms2.o
  LD      .tmp_vmlinux3
  KSYM    .tmp_kallsyms3.S
  AS      .tmp_kallsyms3.o
  CHK     include/linux/version.h
*** Error: Headers not exportable for this architecture (l4) <--- this error
make[1]: *** [headers_install] error 1
make: *** [vmlinux] error 2

My build way is based on the official website
First, I download the source of L4Linux 2.6 and the l4linux-2.6-env
module using SVN repository.

     [root at lin root]# svn co http://svn.tudos.org/repos/l4linux/trunk
     [root at lin root]# svn co -N http://svn.tudos.org/repos/tudos/trunk tudos
     [root at lin tudos]# ./repomgr checkout l4linux-2.6-env

The directory structure is following.

       - build/
       - dice/
       - l4/
       - l4linux-2.6/
       - repomgr
       - tools

Next, I configure and make L4 enviroment.

     [root at lin tudos]# make -C l4 O=/root/tudos/build/ config
     [root at lin tudos]# make -C l4 O=/root/tudos/build/

In DROPS Configuration Tool, I set the path to the DROPS tree.
Other parameters are default.

     Paths and Directories --->
       DROPS_STDDIR: "/root/tudos/"

Finally, I go to the l4linux-2.6 directory and configure and make.

     [root at lin l4linux-2.6]# make menuconfig
     [root at lin l4linux-2.6]# make

I change a lot of parameters in L4Linux kernel configuration to avoid
many other errors in start and end of make sequence.

     L4Linux configuration --->
       - (/root/tudos/build/) L4 tree build directory
     Proccessor type and features --->
       - [ ] Symmetric multi-proccessing support
       -     Subarchitecture Type (PC-compatible) --->
       - [ ] HPET Timer Support
       -     Preemption Model (No Forced Preemption (Server)) --->
       - [ ] Local APIC support on uniproccessors
       - [ ] Machine Check Exception
       -     High Memory Support (off) --->
       - [ ] MTRR (Memory Type Range Register) support
       - [ ] kexec system call
     Power Management option (APIC, APM) --->
       - [ ] Power Management support
     Bus option (PCI, PCMCIA, EISA, MCA, ISA) --->
       - [*] PCI access support
               PCI access mode (Direct) --->
     File systems --->
       -     Pseudo filesystems --->
         - [ ] HugeTLB file system support

The error massage may be printed by l4linux-2.6/Makefile (line 928).
If there is not file "include/asm-$(ARCH)/Kbuild", it print the error in make.
But I seem not to exist Kbuild in include/asm-l4 direcory ...

What is the cause of the error ?
I think that some settings about L4 environment are lacked.
But I cannot understand the sure way to build L4Linux and its environment yet...
Please help me !

Thanks and best regards,

More information about the l4-hackers mailing list