Zeta:QuickStart
From Freehackers
We will describe here a kind of Zeta Demonstration. The aim is for you to have a zeta kernel booting on your computer starting from nothing. This is the quickstart for Zeta 0.6, it will probably not apply "as-is" to other versions.
What you need :
- The zeta distribution (see the download page)
- 250 Mb of free space on you hard disk.
- root access to the computer (to create /opt/zeta, and to use mknod on it)
First, download the archive, extract it and check you've got everything :
orzel@berlioz /home/orzel% tar xjf zeta-0.6.tar.bz2
orzel@berlioz /home/orzel% cd zeta-0.6
orzel@berlioz /home/orzel/zeta-0.6% make check
Host tools checked :
genromfs : genromfs 0.5.1
gmake : GNU Make 3.81
Binutils : GNU ld version 2.17
GCC : gcc (GCC) 4.0.3 (Gentoo 4.0.3, pie-8.7.8)
(Everything seems ok)
Then, you need to create /opt/zeta, writable by your user. You can use another path by changing the PREFIX variable in the Makefile, but this it not tested.
orzel@verdi orzel/zeta-0.6> sudo mkdir /opt/zeta/ orzel@verdi orzel/zeta-0.6> sudo chown orzel: /opt/zeta/
Ok, now that everything is settled, we compile and install the toolchain that will enable cross compilation for the Zeta platform.
orzel@verdi orzel/zeta-0.5> make toolchain
The following step will test the toolchain. Lot of tests are done, and, of course, all should be ok. That means you should see very clearly the following message displayed at the end:
orzel@verdi orzel/zeta-0.6> (cd tests/; make ) (....blabla...) ########################################## ######## Testsuite OK ########## ##########################################
It is now time to cross compile the zeta kernel
orzel@verdi orzel/zeta-0.6> make make_linux (...) /opt/zeta/bin/zeta-unknown-linux-objcopy -O binary -R .note -R .comment -R .stab -R .stabstr -S vmlinux vmlinux.raw make[1]: Leaving directory `/home/orzel/zeta-0.6/linux\' orzel@verdi orzel/zeta-0.6>
Finally, we should be able to actually boot the kernel!
orzel@verdi orzel/zeta-0.6> cd emulator
orzel@verdi orzel/zeta-0.6/emulator> make
orzel@verdi orzel/zeta-0.6/emulator> ./load_kernel |less
Zeta Emulator (C) Copyright 2000-2006 Thomas Capricelli
/ \
| *** | Loading kernel = ../../linux/vmlinux.raw
| * | at 0x0, size = 692376 = 0xa9098
| * | Loading ramdisk = ../../ramdisk.romfs
| * | at 0x100000, size = 12288 = 0x3000
| *** | Execution begins at 0x0
\ / Loading Symbols : ../../linux/System.map
Symbol::Symbol, 2461 entries loaded
...
If you have Qt-4 installed, you can use the Graphical user interface :
orzel@verdi orzel/zeta-0.6/emulator> cd gui orzel@verdi orzel/zeta-0.6/emulator/gui> qmake # be sure it is qmake from qt4 orzel@verdi orzel/zeta-0.6/emulator/gui> make orzel@verdi orzel/zeta-0.6/emulator/gui> ./zeg &
