mes/INSTALL

65 lines
1.7 KiB
Plaintext

-*- org -*-
Building and Installing GNU Mes
Mes can be built in two modes: as a regulare package build or as
a bootstrap package.
After bootstrapping Mes, it can be used to bootstrap TinyCC (tcc) in a
similar way.
* Get it
git clone [[git://git.savannah.gnu.org][git://git.savannah.gnu.org/mes.git]]
* Regular build
** Prerequisites
*** Guix
guix environment -l .guix.scm #64 bit + 32bit
guix environment --system=i686-linux -l .guix.scm #32 bit only
*** Other GNU/Linux
- [[https://github.com/oriansj/mescc-tools][mescc-tools]], 0.5 is known to work.
- [[https://savannah.gnu.org/projects/nyacc][Nyacc]], [[https://gitlab.com/janneke/nyacc][patched Nyacc]] 0.80.42 is known to work.
- GNU Gcc, 4.9.3 is known to work.
- GNU Guile, version 2.0.12 or is know to work.
- SH, /bin/sh, GNU Bash 4.3 is known to work.
- GNU coreutils
- sed, GNU sed 4.2 is known to work.
- git, 2.10 is known to work.
- Perl, 5.22 is known to work.
** Build it
./configure
make
** Check it
make check
** Install it
make install
* Guix it
guix package -f .guix.scm
* Bootstrap build
The bootstrap build is being developed in GuixSD, see
https://gitlab.com/janneke/guix/blob/wip-bootstrap/gnu/packages/mes.scm
** Prerequisites
- [[https://github.com/oriansj/mescc-tools][mescc-tools]], 0.5 is known to work.
- [[https://savannah.gnu.org/projects/nyacc][Nyacc]], [[https://gitlab.com/janneke/nyacc][patched Nyacc]] 0.80.42 is known to work.
- [[https://gitlab.com/janneke/mes-seed][mes-seed]], 0.16 is known to work.
** Build it
<setup environment, e.g. prefix, MES_SEED>
./build.sh
** Check it
./check.sh
** Install it
./install.sh