Building L4Linux for ARM

Adam Lackorzynski adam at os.inf.tu-dresden.de
Wed Jun 15 15:22:39 CEST 2011


Hi,

On Wed Jun 15, 2011 at 13:24:44 +0100, Anna Fischer wrote:
> On Wed, 2011-06-15 at 11:44 +0000, Fischer, Anna wrote:
> > I am trying to compile/build L4Linux for an ARM-based platform.
> > 
> > When I execute make then I get an error saying Makeconf.l4conf cannot be
> > found. 
> > 
> > These are the steps I have followed to build L4Linux.
> > 
> > # cd /root/l4linux
> > # svn co http://svn.tudos.org/repos/oc/l4linux/trunk l4linux
> > # cd l4linux/
> > # mkdir build
> > # cp arch/l4/configs/arm-mp_defconfig build/.config
> > # make O=build/ oldconfig
> > # make O=build/ menuconfig
> > (set L4 tree build directory to '/root/l4linux/l4linux/build')
> > (de-configure PCI etc)
> > # make O=build/ 
> > 
> > L4 source directory: /root/l4linux/l4linux
> > PWD=/root/l4linux/l4linux make -C /root/l4linux/l4linux
> > -f /root/l4linux/l4linux/arch/l4/Makefile.l4conf
> > O=/root/l4linux/l4linux/build L4X_LOOP_CHECK=1
> > OUTPUT=/root/l4linux/l4linux/build/Makeconf.l4conf
> > make[3]: *** No rule to make target `/.config.all', needed by
> > `/root/l4linux/l4linux/build/Makeconf.l4conf'.  Stop.
> > make[2]: *** [/root/l4linux/l4linux/build/Makeconf.l4conf] Error 2
> >   GEN     /root/l4linux/l4linux/build/Makefile
> > scripts/kconfig/conf --silentoldconfig Kconfig
> > make[2]: *** No rule to make target `/.config.all', needed by
> > `/root/l4linux/l4linux/build/Makeconf.l4conf'.  Stop.
> >   Creating asm-l4/api-l4env -> asm/api symlink
> >   Creating asm-l4/l4lxapi/impl symlink
> >   Creating asm-l4/l4x-arm -> asm/l4x symlink
> >   Creating asm-l4/l4-arch/asm symlink
> >   Creating asm-l4/arm-arch/mach symlink
> >   Creating asm-l4/orig-arch symlink
> > make[1]: *** No rule to make target
> > `/root/l4linux/l4linux/build/Makeconf.l4conf', needed by `archprepare'.
> > Stop.
> > make: *** [sub-make] Error 2
> > 
> 
> I figured that this was because I did not point to the L4Re build
> directory. Now I have changed that appropriately, and the build runs a
> bit further. Now I am getting the following error:
> 
> # make O=build/           
> Package libio-io was not found in the pkg-config search path.
> Perhaps you should add the directory containing `libio-io.pc'
> to the PKG_CONFIG_PATH environment variable
> Package 'libio-io', required by 'libio', not found
> Getting required compilation flags failed.
> L4OBJ: /root/l4re-core-2011042112/src/l4/testbuild
> L4_REQUIRED_MODS: stdlibs log l4re_c-util libio shmc
> /root/l4linux/l4linux/arch/l4/Makefile:306: *** Aborting..  Stop.
> make: *** [sub-make] Error 2

To build L4Linux, you need the packages that are summarized with the
'l4linux_requiremnts' keyword at the repomgr.

To build a Linux for ARM, the build command looks as follows:

$ make O=... L4ARCH=arm CROSS_COMPILER=arm-linux- arm_defconfig

Change path to corresponding l4re-objdir:
$ make O=... L4ARCH=arm CROSS_COMPILER=arm-linux- menuconfig

Build:
$ make O=... L4ARCH=arm CROSS_COMPILER=arm-linux- -j2

Which should result in a vmlinuz file in the Linux build root directory.


I've updated http://wiki.tudos.org/Quickstart to include a section on
building L4Linux on ARM.



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