blob: 0dd103698b05dffb9da1952fbf1f2e8e0448206f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
|
%TOC%
This is a brief Building OSKit Mach HowTO. It covers everything from getting the latest sources of both the [OSKit](http://www.cs.utah.edu/flux/oskit/) and the OSKit branch of the GNUmach kernel. There is also [another guide](http://www.etherhogz.org/doc/oskit-mach.html). Down to building and debugging them. On May 27 after the [[GnuMach]] 1.3 release, Roland McGrath merged OSKit Mach in the [[GnuMach]] 2.x mainline.
## <a name="Getting_your_hands_on_the_source"> Getting your hands on the source </a>
First you need to checkout the relevant sources.
### <a name="Accessing_the_FLUX_groups_CVS_or"> </a> Accessing the FLUX groups CVS, or FTP
You can use either the bleeding edge OSKit from CVS, or the latest public release. The latter is preferrable!
CVS:
CVSROOT=":pserver:anoncvs@leak.cs.utah.edu:/cvs"
CVS_RSH=ssh
cvs -z3 co oskit
St. Patricks day 2002 release: <ftp://flux.cs.utah.edu/flux/oskit/oskit-20020317.tar.gz>
Valentine's day 2001 release: <ftp://flux.cs.utah.edu/flux/oskit/oskit-20010214.tar.gz>
### <a name="Accessing_GNU_CVS"> </a> Accessing GNU CVS
Setup your environment with the CVSROOT variable and checkout gnumach.
CVSROOT=":pserver:anoncvs@anoncvs.gnu.org:/cvsroot/hurd"
cvs -z3 co -d oskit-mach gnumach
In case you have been tracking the oskit-branch and want to move to the current HEAD branch you can issue the following instead to update your tree.
cvs -z3 update -r HEAD -Pd
Followed by regular updates without the '-r HEAD'
## <a name="Building"> Building </a>
### <a name="OSKit"> </a> OSKit
The attached [[ATTACHURLmodulesx86pc]] file is my personal setup, it works for me. Now, how to configure and build the OSKit.
Configuring:
# cd oskit-20020317/
# mkdir build
# cd build
# ../configure --prefix=/usr/local --enable-debug
Building:
# make
# sudo make install
### <a name="OSKit_Mach"> </a> OSKit Mach
To build any Mach kernel you need an interface generator, a mig. If your host system is Debian based you can get the "Cheap cross-compuler for GNU/Hurd" with a simple:
$ apt-get gcc-i386-gnu
This will install the i386-gnu-mig in /usr/bin for you.
Configuring:
# cd oskit-mach
# mkdir build
# cd build
# CFLAGS="-g" MIG=i386-gnu-mig OSKIT_LIBDIR=/usr/local/lib/oskit ../configure --prefix=/gnu --enable-debug
Building:
# make
# sudo make install
# sudo gzip /gnu/boot/oskit-mach
## <a name="Debugging"> Debugging </a>
For now, see the [[RemoteDebugOskitMach]] page.
# <a name="Attachments"> Attachments </a>
* [[ATTACHURLmodulesx86pc]]: Modules to build in OSKit
----
-- [[Main/JoachimNilsson]] - 14 May 2002
Updated by:
-- [[Main/LuisBustamante]] - 04 Jun 2002
Moving from oskit-branch to HEAD. -- [[Main/JoachimNilsson]] - 05 Jun 2002
|