Skip to content

Installation from GitHub on Debian

jankoboehm edited this page Dec 20, 2013 · 33 revisions

This page describes the installation of Singular from the latest sources from GitHub on Debian based systems (e.g. Ubuntu).

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 Ubuntu 13.04 for Singular 4.

  1. Install the necessary packages:

(requires root privileges, if you do not have root access, ask your administator to install these packages, you may check with dpkg -l <package name> whether the package is installed already)

a. Version control system Git used to download Singular: * sudo apt-get install git

b. Tools necessary to compile Singular: * sudo apt-get install build-essential * sudo apt-get install autoconf * sudo apt-get install autogen * sudo apt-get install libtool * sudo apt-get install libreadline6-dev * sudo apt-get install libglpk-dev

c. Scientific libraries used by Singular: * sudo apt-get install libgmp-dev * sudo apt-get install libmpfr-dev * sudo apt-get install libcdd-dev * sudo apt-get install libntl-dev

d. Third party math software called by Singular: * sudo apt-get install graphviz (visualization of graphs)

  1. Clone Singular from the git repository:

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

    • cd
    • mkdir Singular4

    Create a directory for the Singular sources and temporary stuff, we use here git/Singular4 in your home directory (if tmp exists, make sure that it does not contain any old stuff):

    • 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 4 (compiling Singular) again.

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

  2. Download and build 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 ../../
  1. 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
    • sudo make install (requires root permissions, if you don't have ask your administrator to install 4ti2)

    Return to the folder Singular4:

    • cd ../../
  2. Compile Singular:

    We specify the location of Flint (tmp in your home directory) and the location to install the Singular binaries (Singular4 in your home directory).

    We also build the gfanlib extension for convex polyhedral computations. To load this extension in Singular, do LIB "gfanlib.so";:

    • cd Sources
    • ./autogen.sh
    • ./configure --with-flint=$HOME/tmp --enable-gfanlib --prefix=$HOME/Singular4
    • make -j 2
    • make install
  3. Run the Singular binary:

    This should be located in the folder Singular4 in your home directory.

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

  5. If you want to create a Debian package to distribute Singular follow these [instructions](Creating a Singular Debian package).

Clone this wiki locally