fiasco compilation problems

Hendrik Tews H.Tews at cs.ru.nl
Fri Nov 24 16:58:33 CET 2006


I just failed in trying to build fiasco-ux:

First I followed the fiasco building and using page (the hello
module variant) using the public cvs:

- The following dependencies are not mentioned: libncurses5-dev,
  autoconf, automake1.9, doxygen

  I don't understand autoconf: the configure scripts should be
  generated at the distributors site?

  When autoconf was missing, I got a message saying I need
  autoconf 2.50, it didn't say I need automake1.9. Here autoconf
  comes by default with 1.8.

  Further I don't understand doxygen: Wouldn't it be better to
  have a separate doc goal and the main make goal independent
  from doxygen?

  I appreciate the different config tools in l4 and fiasco as
  sign of big freedom in this world (and in Dresden in
  particular). ;-) However, it would make live easier for the
  casual l4 configurator (like me) if keybindings would agree and
  fiasco config had an exit button.

- the fiasco-ux site says 

   Enable at least the following configuration options:

       * Target platform (choose UX)
       * Assembler IPC shortcut
       * Generate inline code 

  I could neither find IPC shortcut nor inline code.

- Then I got the following message:

    Flex and Byacc. (If you don't have Byacc, but Bison, try setting
    "bison -y" in the L4 configuration menu under "Compilers and
    Tools". Other Yacc implementations might do it as well.)

  but neither the message nor the website says where to find the
  L4 config menu. Wouldn't it be possible to let the config
  automatically choose bison if byacc is not found?

- the "-C l4" in in 2.a seems to prohibit relativ path for the
  builddir. Why not cd l4 before?

- Point 3.a says "cd l4", but there is no l4 inside l4

- Somebody told me that the preferred way to download fiasco
  nowadays is to use one of the opentc snapshots. If thats true
  if would be nice to have a link to these snapshots.

- Finally fiasco-ux and all the modules were compiled:

tandem l4v2 38> ./fiasco


Fiasco-UX on Linux 2.6.17-2-k7 (i686)
Mapped 64 MB Memory + 0 KB Framebuffer + 0 MB Input Area on FD 3

Loading Module 0x00090000-0x00096d44 [sigma0-ux]
Loading Module 0x00120000-0x002bd9f4 [roottask]

Bootstrapping...

Welcome to Fiasco(ux)!
DD-L4(v2)/x86 microkernel (C) 1998-2006 TU Dresden
Rev: Thu Nov 23 10:27:00 2006 compiled with gcc 4.1.2 for Intel Pentium

CPU: AuthenticAMD (F:23:2:0) Model: Athlon 64 X2 (Toledo) at 2418 MHz

  32/512 Entry I TLB (4K pages)      8 Entry I TLB (4M pages)
  32/512 Entry D TLB (4K pages)      8 Entry D TLB (4M pages)
  64 KB L1 I Cache (2-way associative, 64 bytes per line)
  64 KB L1 D Cache (2-way associative, 64 bytes per line)
1024 KB L2 U Cache (8-way associative, 64 bytes per line)

Freeing init code/data: 24576 bytes (6 pages)

ASSERTION_FAILED (((((*(int *) &(status))) & 0xff) == 0x7f) && ((((*(int *) &(status))) & 0xff00) >> 8) == 10)
  in function static unsigned int Hostproc::create(unsigned int)
  in file /home/tews/Fiasco/current/l4/kernel/fiasco/src/kern/ux/hostproc.cpp:120




Now I tried the latest opentc snapshot. I ingored the opentc
build instructions and applied the fiasco build instructions to
this tree. At some stage it was complaining about gcc-4.1.2 being
the wrong compiler version. I changed the compilers to
gcc-3.4/g++-3.4 in the l4 config. After that make skipped a lot
of dirs, because the goals were done before already. Shouldn't it
recompile everything after changing the compiler? So I did make
clean then and rebuild. But still I saw a lot of messages with
``g++'' (which would be 4.1.2). That's unproblematic?

The compilation stoped eventually with 

    make[3]: Entering directory `/home/tews/Fiasco/opentc-snap/l4/build/doc/building-howto'
    cp building.tex drops-building.tex
    cp: cannot stat `building.tex': No such file or directory
    make[3]: *** [drops-building.tex] Error 1
    make[3]: Leaving directory `/home/tews/Fiasco/opentc-snap/l4/build/doc/building-howto'
    make[2]: *** [all] Error 2
    make[2]: Leaving directory `/home/tews/Fiasco/opentc-snap/l4/doc/building-howto'
    make[1]: *** [building-howto] Error 2
    make[1]: Leaving directory `/home/tews/Fiasco/opentc-snap/l4/doc'
    make: *** [doc] Error 2

There seems a problem with the builddir, because

    tandem l4 29> find . -name building.tex
    ./doc/building-howto/building.tex

However, the build/bin/x86_586/l4v2 dir looked already very full,
so I decided to ignore the build instructions and tried:

tandem l4v2 7> ./fiasco 


Fiasco-UX on Linux 2.6.17-2-k7 (i686)
Mapped 64 MB Memory + 0 KB Framebuffer + 0 MB Input Area on FD 3

Loading Module 0x00090000-0x00096ce4 [sigma0-ux]
Loading Module 0x00120000-0x002bda14 [roottask]

Bootstrapping...

Welcome to Fiasco(ux)!
DD-L4(v2)/x86 microkernel (C) 1998-2006 TU Dresden
Rev: Unknown compiled with gcc 4.1.2 for Intel Pentium

CPU: AuthenticAMD (F:23:2:0) Model: Athlon 64 X2 (Toledo) at 2418 MHz

  32/512 Entry I TLB (4K pages)      8 Entry I TLB (4M pages)
  32/512 Entry D TLB (4K pages)      8 Entry D TLB (4M pages)
  64 KB L1 I Cache (2-way associative, 64 bytes per line)
  64 KB L1 D Cache (2-way associative, 64 bytes per line)
1024 KB L2 U Cache (8-way associative, 64 bytes per line)

Freeing init code/data: 24576 bytes (6 pages)

ASSERTION_FAILED (((((*(int *) &(status))) & 0xff) == 0x7f) && ((((*(int *) &(status))) & 0xff00) >> 8) == 10)
  in function static unsigned int Hostproc::create(unsigned int)
  in file /home/tews/Fiasco/opentc-snap/l4/kernel/fiasco/src/kern/ux/hostproc.cpp:120


which is the same problem as before.


Bye,

Hendrik




More information about the l4-hackers mailing list