INSTALL ======= This file contains the instructions to install the pn compiler. Requirements ------------ To be able to compile the modules you need several standard tools such as pkg-config, bison, flex, and libtool which may not be installed by default. If you are installing on Ubuntu, then you can install the packages libgmp3-dev, libyaml-dev, libntl-dev, libsyck0-dev and libxml2-dev through dpkg and then you can go straight to the installation of LLVM/clang and isa. Installing pn ------------- You can install pn either automatically using the installer script (called setup.sh and located in the same directory as this file), or manually by following all the instructions mentioned below. ### Installation via Installer Script To install pn using the installer script, execute the following commands: mkdir pn cd pn wget http://daedalus.liacs.nl/pngen/release_20120207/setup.sh chmod +x setup.sh ./setup.sh [nocheck] The script will automatically download and install all the packages needed by pn. If setup.sh is executed with no options, it invokes `make check` for all the packages which increases the installation time considerably. Therefore, you can execute it with the option `nocheck` which will skip invoking `make check` for all the packages. ### Manual Installation If, for any reason, setup.sh does not work, then you can follow the following instructions. We assume that you will install pn to /home/user/pn extract GMP from the tar ball cd ./configure --prefix=/home/user/pn make make check make install cd .. extract SYCK from the tar ball cd ./configure --prefix=/home/user/pn make make check make install cd .. extract YAML from the tar ball cd ./configure --prefix=/home/user/pn make make check make install cd .. extract NTL from the tar ball cd cd src ./configure NTL_GMP_LIP=on PREFIX=/home/user/pn make make check make install cd ../.. extract LIBXML2 from the tar ball cd ./configure --prefix=/home/user/pn make make check make install cd .. extract 'Clang Binaries' from the tar ball extract ISA from the tar ball cd ./configure --prefix=/home/user/pn \ --with-syck=/home/user/pn \ --with-ntl-prefix=/home/user/pn \ --with-gmp-prefix=/home/user/pn \ --with-libxml2=/home/user/pn \ --with-libyaml-prefix=/home/user/pn \ --with-clang-prefix=/home/user/pn make make check make install That's all! Todor Stefanov (stefanov@liacs.nl), 08.02.2012