Hi,
After checking out hello, l4/pkg/generic_ts, l4/pkg/cxx, l4/kernel/fiasco, l4/tool/preprocess from CVS and doing:
make -C l4 O=build oldconfig cd l4 make O=build
stops at:
l4/pkg/generic_ts/lib/clientlib/server.c:16:26: error: l4/log/l4log.h: No such file or directory l4/pkg/generic_ts/lib/clientlib/server.c:17:26: error: l4/env/errno.h: No such file or directory l4/pkg/generic_ts/lib/clientlib/server.c:18:31: error: l4/names/libnames.h: No such file or directory
What do I need to checkout for log, env and names?
System is x86 running Ubuntu Dapper with make-3.81-2.
Is there a complete tarball that contains the entire sources - L4env, fiasco, L4Linux, and others, that I can simply download and build, rather than having to check-out individual modules from CVS?
Thanks,
SK
-- Shakthi Kannan http://www.shakthimaan.com
__________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com
On Tuesday 19 December 2006 10:58, Shakthi Kannan wrote:
Hi,
After checking out hello, l4/pkg/generic_ts, l4/pkg/cxx, l4/kernel/fiasco, l4/tool/preprocess from CVS and doing:
make -C l4 O=build oldconfig cd l4 make O=build
stops at:
l4/pkg/generic_ts/lib/clientlib/server.c:16:26: error: l4/log/l4log.h: No such file or directory l4/pkg/generic_ts/lib/clientlib/server.c:17:26: error: l4/env/errno.h: No such file or directory l4/pkg/generic_ts/lib/clientlib/server.c:18:31: error: l4/names/libnames.h: No such file or directory
What do I need to checkout for log, env and names?
nothing. You can simply checkout these packages (in directory: l4/pkg/) by typing:
cvs -d :pserver:guest@os.inf.tu-dresden.de:/home/remote-cvs login cvs -d :pserver:guest@os.inf.tu-dresden.de:/home/remote-cvs co l4/pkg/names ...
But its much simpler to just checkout the module: l4env: cvs -d ... co l4env
System is x86 running Ubuntu Dapper with make-3.81-2.
Is there a complete tarball that contains the entire sources - L4env, fiasco, L4Linux, and others, that I can simply download and build, rather than having to check-out individual modules from CVS?
have a look at here: http://os.inf.tu-dresden.de/opentc/download.xml
greets stefan
Thanks,
SK
-- Shakthi Kannan http://www.shakthimaan.com
Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com
l4-hackers mailing list l4-hackers@os.inf.tu-dresden.de http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers
Hi,
Thanks for your replies.
--- Stefan Kalkowski stefan.kalkowski@os.inf.tu-dresden.de wrote:
have a look at here: http://os.inf.tu-dresden.de/opentc/download.xml
I downloaded source-20061016-p3.tar.bz2. Set HOST_CC,CC to gcc-3.3 and HOST_CXX and CXX to g++-3.3 in build_l4/.Makeconf.bid.
Doing make in the top-level directory created the build. Entered l4/ and did make O=../build_l4. It compiled fine.
Now, I created a small package l4/pkg/hiworld and ran ../../mk/tmpl/inst to create required files in hiworld/ directory. On doing make O=../build_l4 again, hiworld was compiled.
Built fiasco-ux and irq0 (using same gcc-3.3 and g++-3.3) in fiasco/ directory. Copied sigma0-ux, roottask, fiasco, irq0 and hiworld to /tmp/build directory. Changed to the directory and ran:
./fiasco -l hiworld
=== Output BEGINS===
Fiasco-UX on Linux 2.6.17 (i686) Mapped 64 MB Memory + 0 KB Framebuffer + 0 MB Input Area on FD 3
Loading Module 0x00090000-0x00096c24 [sigma0-ux] Loading Module 0x00120000-0x002bda14 [roottask] Copying Module 0x03949000-0x039e0bd4 [hiworld]
Bootstrapping...
Welcome to Fiasco(ux)! DD-L4(v2)/x86 microkernel (C) 1998-2006 TU Dresden Rev: Unknown compiled with gcc 3.3.6 for Intel Pentium 4
CPU: GenuineIntel (6:9:5:16) Model: Pentium-M (Banias) at 1395 MHz
128 Entry I TLB (4K pages) 2 Entry I TLB (4M pages) 128 Entry D TLB (4K pages) 8 Entry D TLB (4M pages) 32 KB L1 I Cache (8-way associative, 64 bytes per line) 32 KB L1 D Cache (8-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)
SIGMA0: Hello! Found Fiasco: KIP syscalls: yes. Allocated 20kB for maintenance structures.
Roottask. Found Fiasco-UX. Command line found: "roottask"
64512kB ( 63MB) total RAM (reported by bootloader) 56600kB ( 56MB) received RAM from Sigma0 2268kB ( 3MB) reserved RAM for RMGR Received no I/O ports Attached irqs = [ <!0> 1 2 3 4 5 6 7 8 9 A B C D E F ]
Roottask: Loading 1 module. #05: loading "hiworld" from [03949000-039e0bd4] to [01800000-01813120][01814000-01834000] entry at 0000d060 via trampoline page code symbols at [039ec000-039f0000] (16kB), lines at [03939000-03949000] (64kB)
*hiworld | [5.0] l4rm/lib/src/config.c:103:l4rm_get_dsm(): *hiworld | L4RM: no dataspace manager found!
--PANIC, 'g' for exit-------------------------------ESP:01816ec0 EIP:01803d90 (5.00) jdb: g
=== Output ENDS ===
Do we need to build applications in a separate manner for fiasco-ux? The downloaded snapshot is exclusively for fiasco?
Thanks,
SK
-- Shakthi Kannan http://www.shakthimaan.com
__________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com
On Tue Dec 19, 2006 at 09:38:39 -0800, Shakthi Kannan wrote:
Roottask: Loading 1 module. #05: loading "hiworld" from [03949000-039e0bd4] to [01800000-01813120][01814000-01834000] entry at 0000d060 via trampoline page code symbols at [039ec000-039f0000] (16kB), lines at [03939000-03949000] (64kB)
*hiworld | [5.0] l4rm/lib/src/config.c:103:l4rm_get_dsm(): *hiworld | L4RM: no dataspace manager found!
--PANIC, 'g' for exit-------------------------------ESP:01816ec0 EIP:01803d90 (5.00) jdb: g
=== Output ENDS ===
Do we need to build applications in a separate manner for fiasco-ux?
Generally speaking no. If one does something hardware related, then yes, a bit.
The downloaded snapshot is exclusively for fiasco?
Yes.
You probably need to set
MODE = tiny
in your Makefile where you build your example. This builds using a mode with much less dependencies.
Adam
On Tue, 19 Dec 2006 09:38:39 -0800 (PST) Shakthi Kannan (SK) wrote:
SK> ./fiasco -l hiworld SK> SK> *hiworld | [5.0] SK> l4rm/lib/src/config.c:103:l4rm_get_dsm(): SK> *hiworld | L4RM: no dataspace manager found!
You forgot to load the servers that your hiworld program depends upon; l4rm being one of them. You'll have to load them via "-l" as well.
- Udo
Udo A. Steinberg wrote:
On Tue, 19 Dec 2006 09:38:39 -0800 (PST) Shakthi Kannan (SK) wrote:
SK> ./fiasco -l hiworld SK> SK> *hiworld | [5.0] SK> l4rm/lib/src/config.c:103:l4rm_get_dsm(): SK> *hiworld | L4RM: no dataspace manager found!
You forgot to load the servers that your hiworld program depends upon; l4rm being one of them. You'll have to load them via "-l" as well.
More clearly, the l4rm lib requires a dataspace providing server, such as dm_phys.
Cheers, Martin
On Tue Dec 19, 2006 at 01:58:44 -0800, Shakthi Kannan wrote:
After checking out hello, l4/pkg/generic_ts, l4/pkg/cxx, l4/kernel/fiasco, l4/tool/preprocess from CVS and doing:
make -C l4 O=build oldconfig cd l4 make O=build
stops at:
l4/pkg/generic_ts/lib/clientlib/server.c:16:26: error: l4/log/l4log.h: No such file or directory l4/pkg/generic_ts/lib/clientlib/server.c:17:26: error: l4/env/errno.h: No such file or directory l4/pkg/generic_ts/lib/clientlib/server.c:18:31: error: l4/names/libnames.h: No such file or directory
What do I need to checkout for log, env and names?
log, l4env and names. Just go to l4/pkg and do $ cvs update log l4env names
Is there a complete tarball that contains the entire sources - L4env, fiasco, L4Linux, and others, that I can simply download and build, rather than having to check-out individual modules from CVS?
You can also use http://os.inf.tu-dresden.de/download/snapshots/ Daily generated from remote-cvs. But I think also work with the above simple 'trick'.
Adam
Hi,
hiworld example worked!
--- Adam Lackorzynski adam@os.inf.tu-dresden.de wrote:
You probably need to set MODE = tiny
This worked for me earlier. I simply copied hello/ directory to hiworld, changed hiworld/server/src/main.c and compiled fine. I was just curious to test the hiworld example built with l4/mk/tmpl/inst script.
--- Udo A. Steinberg <us15 at os.inf.tu-dresden.de> wrote:
You forgot to load the servers that your hiworld program depends upon; l4rm being one of them. You'll
have to load them via "-l" as well.
Its not that I forgot, its just that I don't know about them :) Thanks.
Summary -------
1. Checkout l4env, hello, l4/pkg/cxx, l4/kernel/fiasco, and l4/tool/preprocess.
2. Since, I was using Ubuntu which has gcc and g++ pointing to 4.0.3, I had to change the symbolic link files to point to 3.3 version. l4io requires gcc 3.x.
3. Create a l4/pkg/hiworld directory. cd to it and do: ../../mk/tmp/inst
It will create the necessary files for the hiworld package. I just modifed hiworld/server/src/main.c to print "Hiworld".
4. Move to the directory above l4/ and do:
make -C l4 O=build oldconfig cd l4 make O=build
Copied log, names, dm_phys, roottask, sigma0 to /tmp/build from l4/build/bin/x86_586/l4v2.
5. Build fiasco:
cd l4/kernel/fiasco make menuconfig Choose 'fiasco-ux'. Choose Pentium 4. Enable DECEIT_BIT_DISABLES_SWITCH. make
Copied kernel.image (fiasco) and irq0 from l4/kernel/fiasco/build/ to /tmp/build.
6. Test it:
./fiasco -l names -l log -l dm_phys -l hiworld
Thanks,
SK
-- Shakthi Kannan http://www.shakthimaan.com
__________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com
Just one remark.
On Wed Dec 20, 2006 at 09:11:32 -0800, Shakthi Kannan wrote:
Summary
- Checkout l4env, hello, l4/pkg/cxx,
l4/kernel/fiasco, and l4/tool/preprocess.
- Since, I was using Ubuntu which has gcc and g++
pointing to 4.0.3, I had to change the symbolic link files to point to 3.3 version. l4io requires gcc 3.x.
It's also possible to configure another gcc/g++ version in the configuration menu: "Compiler and Tools". No need to change the system compiler.
Adam
l4-hackers@os.inf.tu-dresden.de