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