Skip to content

Installation from GitHub on Cygwin32

jankoboehm edited this page Dec 20, 2013 · 10 revisions

This page describes the installation of Singular from the latest sources from GitHub on Windows 32-bit systems using Cygwin.

Use this if you need a feature introduced after the last release or if you want to develop for Singular.

This version of the instructions was tested on Windows 7 with Singular 4.

  1. Run setup-x86.exe and install (in addition to the standard selection) the following packages (you will be asked to resolve dependencies, answer yes):

    a. Tools used to download Singular and other packages:

    git, wget

    b. Tools necessary to compile Singular:

    gcc-core, gcc-g++, automake, make, libtool, libreadline7

    c. Scientific libraries used by Singular:

    libgmp-devel, libmpfr-devel, mpfr

  2. Clone Singular from the git repository:

    Create a directory for the Singular binaries we use here Singular4 in your home directory:

    • cd /home
    • mkdir Singular4

    Create a directory for the Singular sources and a temporary directory for third party libraries we use here /home/git/Singular4 and /home/tmp:

    • mkdir tmp
    • mkdir git
    • cd git
    • mkdir Singular4
    • cd Singular4

    Download Singular from the git repository:

    • git clone https://github.com/Singular/Sources.git

    If you want to update to the latest version in the future use git pull and do step 6 (compiling Singular) again.

    Although you can now compile Singular, we strongly recommend to install some more scientific packages (otherwise some features will not be available).

  3. Install NTL:

    Download NTL:

    • mkdir ntl
    • cd ntl
    • wget http://www.shoup.net/ntl/ntl-6.0.0.tar.gz
    • tar -xvf ntl-6.0.0.tar.gz
    • cd ntl-6.0.0
    • cd src

    Compile NTL and install into the folder tmp in your home directory:

    • ./configure DEF_PREFIX=/home/tmp NTL_GMP_LIP=on
    • make
    • make install

    Return to the folder Singular4

    • cd ../../../
  4. Install CDDLIB:

    Download CDDLIB:

    • mkdir cddlib
    • cd cddlib
    • wget ftp://ftp.ifor.math.ethz.ch/pub/fukuda/cdd/cddlib-094g.tar.gz
    • tar -xvf cddlib-094g.tar.gz
    • cd cddlib-094g

    Compile cddlib and install into the folder tmp in your home directory:

    • ./configure --prefix=/home/tmp
    • make -j 2
    • make install

    Return to the folder Singular4:

    • cd ../../
  5. Install FLINT:

    Create a directory and download FLINT:

    • mkdir flint
    • cd flint
    • git clone git://github.com/wbhart/flint2.git flint2
    • cd flint2

    Compile flint and install into the folder tmp in your home directory

    • ./configure --with-gmp=/usr --prefix=/home/tmp --disable-shared --with-mpfr=/usr
    • make -j 2
    • make install

    Return to the folder Singular4

    • cd ../../
  6. Download and install 4ti2 (used by some Singular commands for lattice computations):

    Create a directory and download 4ti2:

    • mkdir 4ti2
    • cd 4ti2
    • wget http://www.4ti2.de/version_1.6/4ti2-1.6.tar.gz
    • tar xvfz 4ti2-1.6.tar.gz
    • cd 4ti2-1.6

    Compile 4ti2:

    • ./configure
    • make
    • make install (requires root permissions, if you don't have ask your administrator to install 4ti2)

    Return to the folder Singular4:

    • cd ../../
  7. Compile Singular:

We specify the location of NTL, FLINT and the location to install the Singular binaries.

  • cd Sources
  • ./autogen.sh
  • ./configure --without-python --with-ntl=/home/tmp --with-flint=/home/tmp --prefix=/home/Singular4
  • make -j 2
  • make install
  1. Run the Singular binary (this should now be located in the folder Singular4 in your home directory):

    • cd /home
    • ./Singular4/bin/Singular
  2. If you want to use the plotting tools Surfer and Surf follow these [instructions](Installation of Surfer on Cygwin32).

Clone this wiki locally