Troubles. X86: can't boot bare-metal. ARM: can't compile

Thomas DuBuisson thomas.dubuisson at ...9...
Tue May 4 00:18:23 CEST 2010


Hello all,
Below are two separate issues carelessly smashed into one e-mail - if
you have any comments on either one then I'm all ears.

-------- x86 ---------
After building Genode+Fiasco [1] I can run the hello demo and scout
demo (from "build/bin/*") on top of Linux, but I can't seem to boot
bare metal. I'm copying the binaries from
"<compound-build>/genode.fiasco_x86/bin", getting bootstrap and sigma0
from "<compound-build>/l4env/bin/...", and L4 kernel from
"<compound-build>/fisco_x86/main".

When I boot, the kernel starts up, prints a pc and sp (I notice
"Roottask" has a stack address of all zeros).  And quickly restarts.
I'd paste output but it auto restarts and I don't have a serial port
to over which I could collect output.

The config (this is one, I've tried lots of alterations):
##############
<config>
        <start>
                <filename>vesa_drv</filename>
                <ram_quota>2M</ram_quota>
        </start>
        <start>
                <filename>timer</filename>
                <ram_quota>0x20000</ram_quota>
        </start>
        <start>
                <filename>nitpicker</filename>
                <ram_quota>1M</ram_quota>
        </start>
        <start>
                <filename>hello_server</filename>
                <ram_quota>1M</ram_quota>
        </start>
        <start>
                <filename>hello_client</filename>
                <ram_quota>1M</ram_quota>
        </start>
</config>
#################

And the grub entry:
#############
title L4 Fiasco + Genode (10.02)
        kernel /bootstrap -modaddr=0x03000000
        module /fiasco nowait -nokdb -tbuf_entries=16384 -serial_esc
        module /sigma0
        module /core
        module /init
        module /config
        module /vesa_drv
        module /nitpicker
        module /timer
        module /launchpad
        module /testnit
        module /scout
        module /nitlog
        module /liquid_fb
        module /hello_server
        module /hello_client
###############


Any help?  Let me know if you want more info.

[1] http://genode.org/community/wiki/GenodeOnL4Fiasco

-------- ARM --------
Separately, I'm having trouble building Fiasco on ARM - basically its
missing types.h.  Am I missing a step?

After altering specs.conf "SPECS = genode fiasco_arm"
And after setting tools.conf to point at my cross compiler:

[tommd at ...36... genode-arm]$ cp tool/builddir/etc/build.conf.fiasco_x86
tool/builddir/etc/build.conf.fiasco_arm
[tommd at ...36... genode-arm]$ ./tool/builddir/create_builddir fiasco_arm
GENODE_DIR=. BUILD_DIR=~/dev/genode-arm/3rd-build/genode-fiasco_arm
L4_DIR=~/dev/genode-arm/3rd-build/3rd/l4env
successfully created build directory at
/home/tommd/dev/genode-arm/3rd-build/genode-fiasco_arm
[tommd at ...36... genode-arm]$ make -C ~/dev/genode-arm/3rd-build/genode-fiasco_arm/
make: Entering directory
`/home/tommd/dev/genode-arm/3rd-build/genode-fiasco_arm'

Processing /home/tommd/dev/genode-arm/base-fiasco/src/core/arm/target.mk
------------------------------------------------------------------------
  Library avl_tree
    COMPILE  avl_tree_avl_tree.o
    MERGE    avl_tree.lib.a
  Library slab
    COMPILE  slab_slab.o
    MERGE    slab.lib.a
  Library allocator_avl
    COMPILE  allocator_avl_allocator_avl.o
    MERGE    allocator_avl.lib.a
  Library cxx
    COMPILE  cxx_exception.o
    COMPILE  cxx_guard.o
    COMPILE  cxx_malloc_free.o
In file included from
/home/tommd/dev/genode-arm/base/include/base/typed_capability.h:17,
                 from
/home/tommd/dev/genode-arm/base/include/parent/capability.h:17,
                 from /home/tommd/dev/genode-arm/base/include/base/env.h:20,
                 from
/home/tommd/dev/genode-arm/base/src/base/cxx/malloc_free.cc:17:
/home/tommd/dev/genode-arm/base-fiasco/include/base/capability.h:18:
fatal error: l4/sys/types.h: No such file or directory
compilation terminated.
make[4]: *** [cxx_malloc_free.o] Error 1
make[3]: *** [cxx.tag] Error 2
make[2]: *** [all_sequence] Error 2
make[1]: *** [single_target] Error 2
make: *** [.] Error 2
make: Leaving directory `/home/tommd/dev/genode-arm/3rd-build/genode-fiasco_arm'


Any help on either of these would be much appreciated.  I'd love to
use/contribute to Genode but if I can't build it myself / be self
sufficient (perhaps I should be embarrassed) then I'm far from
helpful!

Cheers,
Thomas




More information about the users mailing list