[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: OSkit-mach and microkernel building



Hi there. Here are some links as you requested.

Obviously oskit-mach requires oskit to link against.

Debian oskit packages are at
     ftp://ftp.debian.org/debian/pool/main/o/oskit/

The main oskit site at the University of Utah is:
    http://www.cs.utah.edu/flux/oskit/

As for oskit-mach, contact Roland McGrath mailto:roland@frob.com

I haven't yet built oskit for Linux or Hurd, so I thusly don't need
oskit-mach yet. Presumably it is somewhere out in cvs-land, but
Roland is currently tinkering with it. He'll need to provide updated
cvs checkout instructions at some point.
 

Sian Leitch wrote:

Dear Douglas

Have just decided to go the HURD way, but have not yet started producing
my cross-compilation system.

Well, do it the easy way... see here from this old message...

<Prabhu Ramachandran writes:>

This is taken from one of my earlier messages.  Here is what I do to
compile gnumach on my Debian GNU/Linux 2.2 i386 machine.

(1) # apt-get install gcc-i386-gnu mig-i386-gnu
This is from the stable archives.  These two packages are _very_ small
totalling less than 50KB.

(2) Download gnumach-1.2.tar.gz and gnumach_1.2-5.diff.gz from 
http://http.us.debian.org/debian/dists/unstable/main/source/base/
You can get it from your favourite mirror too.

(3) $ tar xvzf gnumach-1.2.tar.gz

(4) $ gzip -cd gnumach_1.2-5.diff.gz | patch -p0

In what follows I am assuming that your hurd partition is mounted as
/gnu under linux.  Change it to suit your needs.  Also change the
configure options with --enable as necessary.

(5) $ cd gnumach-1.2/
    $ MIG=i386-gnu-mig CC=i386-gnu-gcc ./configure --enable-floppy \
    --enable-ide --enable-ne2000 i386-pc-gnu --prefix=/gnu
    $ make

(6) # mount /gnu; make install 
This puts the kernel in /gnu/boot/gnumach.  Gzip it if you want to.

(7) Reboot and then use grub to boot with the kernel=/boot/gnumach

hope this helps.
prabhu


This does indeed work with Debian 2.2+, very simple.

Also you need a new version of gnumach ( this is not the oskit-mach ) but it would be
a good test to compile it and boot up Hurd with your device drivers. See how here:

< ogi@fmi.uni-sofia.bg (Ognyan Kulev) writes >

You have older GNUMach that cannot be compiled by newer gcc.  If your apt is
configured to use unstable sources you can do `apt-get source gnumach'.  If
it is not and you don't want to do this the easiest is to take GNUMach from
GNU's CVS:

export CVSROOT=:pserver:anoncvs@subversions.gnu.org:/cvs
cvs login #hit enter when you are asked for a password
cvs -z3 checkout gnumach

BTW You can checkout CVS Hurd using the same commands.

Of course you can just apply the Debian patch too:)  It's in
ftp://ftp.debian.org/debian/pool/main/g/gnumach


That is a good concise guide to installing a Hurd cross-compiler in Debian GNU/Linux
and building a custom gnumach kernel.
 

Please would you tell me where I can get details, including the source,
of the OSkit-mach?

My particular interest will be porting the Ctrans Algol 68 compiler
plus related matters.

Well, you might not need to be concerned with oskit-mach right now then
as whether the Hurd is booted from gnumach or oskit-mach the program
should work either way. Right now oskit-mach is in somewhat of a
experimental state and probably isn't suitable for higher than kernel-level
development work. Actually if you just stuck with programming libs common
to Hurd and Linux, your program would work with Hurd, Linux, Cygwin, and
probably many more. Writing good portable code would be the real key here.

Basically the idea is to reverse port oskit-mach to Hurd so as to be a
100% compatible replacement for gnumach, but it has a ways to go right
now I believe.

Cheers!
- Doug
 

Attachment: signature.gpg
Description: application/gpg-signature

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature


Reply to: