First download Stratego XT 0.9.1. The instructions on this page assume that you have downloaded a distribution. See the Latest Sources? topic for instructions on how to prepare the sources you've checked out from the Subversion repository.
Use the instructions in this section if you want to install StrategoXT using source tarballs (.tar.gz
).
StrategoXT is built using the ATermLibrary, SGLR, PGEN, and optionally the Nancy Choice Point Library? (CPL) (with some adaptations for Stratego). SGLR and PGEN are available as part of the sdf2 bundle of tools for the SDF syntax definition formalism.
Using more recents versions of these packages is at your own risk, but should work.
The following sequence of commands takes care of building and installing the aterm and sdf2 bundle from source:
DIR=/usr/local tar zxf aterm-1.6.7.tar.gz cd aterm-1.6.7 ./configure --prefix=$DIR --with-gcc make make install cd .. tar zxf sdf2-1.5.tar.gz cd sdf2-1.5 ./configure --prefix=$DIR --with-aterm=$DIR make install cd ..sdf2-1.5 cannot be build without being installed at the same time. Therefore you must build and install it at the same time (see also a note in the section on the installation of StrategoXT)
Optionally you can install the choice point library:
tar zxf cpl-stratego-0.4.tar.gz cd cpl-stratego-0.4 ./configure --prefix=$DIR make make install cd ..
Unpack and configure StrategoXT with the following commands:
tar zxf strategoxt-0.9.1.tar.gz cd strategoxt-0.9.1 ./configure --prefix=$DIR --with-aterm=$DIR --with-sdf=$DIRIf you intend to modify the sources of StrategoXT, you might want to set the prefix (
DIR
) to the local directory ( `pwd`
) or at least a directory where you have write permissions such that it is easy to re-install the compiler.
To use the Choice Point Library? configure StrategoXT as follows:
./configure --prefix=$DIR --with-aterm=$DIR --with-sdf=$DIR --with-cpl=$DIR
For installation proceed as follows
make install
Please note that doing a separate make
is useless: unfortunately StrategoXT currently cannot be built without being installed at the same time.