summaryrefslogtreecommitdiff
path: root/toolchain/cross-gnu.mdwn
diff options
context:
space:
mode:
Diffstat (limited to 'toolchain/cross-gnu.mdwn')
-rw-r--r--toolchain/cross-gnu.mdwn30
1 files changed, 21 insertions, 9 deletions
diff --git a/toolchain/cross-gnu.mdwn b/toolchain/cross-gnu.mdwn
index 62c55a04..280569ae 100644
--- a/toolchain/cross-gnu.mdwn
+++ b/toolchain/cross-gnu.mdwn
@@ -1,4 +1,4 @@
-[[!meta copyright="Copyright © 2007, 2008, 2010 Free Software Foundation,
+[[!meta copyright="Copyright © 2007, 2008, 2010, 2011 Free Software Foundation,
Inc."]]
[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable
@@ -9,10 +9,12 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license
is included in the section entitled [[GNU Free Documentation
License|/fdl]]."]]"""]]
+[[!tag stable_URL]]
+
[[Thomas_Schwinge|tschwinge]] has written a shell script for building a
complete cross-build environment for GNU/Hurd systems.
-Find it in the [[source_repositories/incubator]], *cross-gnu* branch.
+Find it in the [[source_repositories/incubator]], *cross-gnu/master* branch.
# Using
@@ -31,6 +33,8 @@ differences, as well as towards pushing all patches upstream.
## Supported Versions of Source Packages
+/!\ This is outdated. Contact [[tschwinge]].
+
The following ones are known to work. Others may work as well, but no
guarantee is given. Always the preferred version is listed first.
@@ -117,6 +121,10 @@ guarantee is given. Always the preferred version is listed first.
$ cd libpthread/
$ git checkout origin/tschwinge/Peter_Herbolzheimer
+ Prepare:
+
+ $ ( cd libpthread/ && autoreconf -vi )
+
* [[`src/glibc`|glibc]]
* Git `tschwinge/Roger_Whittaker` branch
@@ -147,9 +155,11 @@ guarantee is given. Always the preferred version is listed first.
## Preparation
+The raw source code trees are about 1 GiB.
+
Unpack the tarballs if you downloaded any.
-Create a directory where the cross build shall be rooted in and a `src`
+Create a directory where the cross build shall be rooted in, and a `src`
subdirectory in there. Then create symbolic links for every of the above
packages: from `src/PACKAGE` to where you stored or unpacked it. If you don't
intend to build several cross compilers or use the source trees otherwise, you
@@ -162,11 +172,11 @@ Either make sure that `cross-gnu-env` and `cross-gnu` are found in `$PATH`
(`~/bin/`, for example) or alternatively remember to use their full paths in
the following.
-The system you're running the script on (the *build* system) needs to have a
-basic compiling environment installed, i.e., a C compiler with the basic
-libraries and `make`. You might also need `flex` and `bison`. For building
-recent version of GCC (4.3 onwards)
-you'll need to have development packages of GMP and MPFR installed.
+The system you're running the script on (the *build* system) needs to have
+basic development tools installed, that is, a C compiler with libraries,
+`make`, and several more packages. If anything is missing, the *cross-gnu*
+build will abort, and you have to install the missing dependencies and resume
+the *cross-gnu* build.
## Setting Up the Environment
@@ -183,12 +193,14 @@ will be set by the script, `$PATH` will be adjusted, etc. See the
their default values. `$ROOT` will be made an absolute path if it isn't
already.
-Later, you'll be able to do things like `../configure --host="$TARGET"` and the
+Later, you'll be able to do things like `../configure --host="$TARGET"`, and the
cross compiler will be found automatically.
## Creating the Cross Build Environment
+This will need an additional 2 GiB.
+
After setting up the environemt, just run `cross-gnu` and watch the messages
flow by. In the end you should see a message: *[...]/cross-gnu: Everything
should be in place now.*