From 82f6c02df5a403c1464fe74aff60bf6c8986e21e Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Wed, 15 Mar 2006 16:55:00 +0000 Subject: none --- Hurd/BuildingHurd.mdwn | 32 ++++++++++++++++++++++++++------ 1 file changed, 26 insertions(+), 6 deletions(-) diff --git a/Hurd/BuildingHurd.mdwn b/Hurd/BuildingHurd.mdwn index 5e9226c9..f17a3d2e 100644 --- a/Hurd/BuildingHurd.mdwn +++ b/Hurd/BuildingHurd.mdwn @@ -1,30 +1,48 @@ # Building the Hurd from Source +If you want to build the Hurd libraries and servers (translators) yourself instead of just using pre-built binaries, follow these instructions. + ## Getting the Source Code You can chose between getting the [sources from the developers's RCS](http://www.gnu.org/software/hurd/download.html#cvs): $ cvs -z3 -d:pserver:anonymous@cvs.savannah.gnu.org:/sources/hurd co hurd - $ cd hurd ... or (if you are working on a Debian system) the ones that are used for the [current Debian hurd package](http://packages.debian.net/source/unstable/hurd): - $ apt-get source hurd # Unpacks in hurd-YYYYMMDD - $ cd hurd-* + $ apt-get source hurd Please see [[Distrib/DebianFAQ]] before using _apt-get source_. The unpacked source tree is around 20MiB, and the build tree (configured with `--disable-profile`) is around 100MiB. -## Building the Hurd +## Preparing for the Build -TODO: cross compiling. +### ... on Debian systems -Building the Hurd requires `build-essential`, `libc-dev` and `mig` packages: +Building the Hurd requires the _build-essential_ and _fakeroot_ packages, their dependencies and additional packages that are specified by the source hurd package: # apt-get install build-essential fakeroot # apt-get build-dep hurd +### ... on non-Debian systems + +[TODO] + +## Building + +### ... _.deb_ files + +Change into the directory with the downloaded / unpacked Hurd sources, e.g. + + $ cd hurd-[TODO] + +Start the build process with + + $ dpkg-buildpackage -us -uc -b -rfakeroot + +### [TODO] + The Hurd has to be built in a separate directory: $ mkdir build @@ -49,6 +67,8 @@ If you just want to build a specific server or library, you can pass its name to This will automatically build all libraries that are required to build the requested server or library. +### cross compiling. + TODO: update. If you want to trace the RPC calls made by some process by using `rpctrace` command, you will also want some more human-readable output of this command. This is achieved by generating `hurd.msgids` file that includes the mapping between the number of the RPC call and its name: -- cgit v1.2.3