diff options
-rw-r--r-- | Hurd/BuildingHurd.mdwn | 32 |
1 files 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 @@ # <a name="Building_the_Hurd_from_Source"> Building the Hurd from Source </a> +If you want to build the Hurd libraries and servers (translators) yourself instead of just using pre-built binaries, follow these instructions. + ## <a name="Getting_the_Source_Code"> Getting the Source Code </a> 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. -## <a name="Building_the_Hurd"> Building the Hurd </a> +## <a name="Preparing_for_the_Build"> Preparing for the Build </a> -TODO: cross compiling. +### <a name="_on_Debian_systems"> ... on Debian systems </a> -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 +### <a name="_on_non_Debian_systems"> ... on non-Debian systems </a> + +[TODO] + +## <a name="Building"> Building </a> + +### <a name="_deb_files"> ... _.deb_ files </a> + +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 + +### <a name="_TODO_"> [TODO] </a> + 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. +### <a name="cross_compiling_"> cross compiling. </a> + 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: |