Home Download 3-1-7

Install Singular 3-x-x on a Linux/Unix platform (Generic Installation)

Downloading SINGULAR Archives

To install Singular on a Unix (inluding Linux and Mac Os X) platform, you need the following two archives:

  1. Singular-3-x-x-share.tar.gz (system independent part)
  2. Singular-3-x-x-architecture.tar.gz (system dependent part)

where you have to replace the following:

  • "3-x-x" has to be replaced by the version number of the Singular system to be installed
  • "architecture" has to be replaced according to the following table:
    Architecture Description of System
    ix86-Linux 32-bit Linux System on Intel Pentium (or compatible)
    x86_64-Linux 64-bit Linux System on AMD 64 (or compatible)
    SunOS-5 Solaris 8 on 32-bit Sparc
    SunOS-5-64 Solaris 8 on 64-bit UltraSparc
    ix86-freebsd 32-bit FreeBSD on Intel Pentium (or compatible)
    AIX-4 AIX 4
    IA64-Linux 64-bit Linux System on Itanium 2
    ix86Mac-darwin Mac Os X 10.5 on Intel
    These (and other) archives can be downloaded from
    For example an installation of Singular 3-1-7 on a 32-bit Linux System needs the file named "Singular-3-1-7-ix86-Linux.tar.gz".

Please contact us if you cannot find an archive appropriate for your architecture.

Installing SINGULAR

Make sure that you have approximately 12MByte of free disk space and follow these steps:

  1. Change to the directory where you wish to install Singular, for example:

    cd /usr/local
    (this requires superuser privileges), or

    mkdir install; cd install
    (requires no superuser privileges).

    Singular specific subdirectories will be created in such a way that multiple versions and multiple architecture dependent files of Singular can peaceably coexist under the same /usr/local tree.

  2. Unpack the archives:

    gzip -dc path-to-your-download-folder/Singular-3-x-x-architecture.tar.gz | tar -pxf -

    gzip -dc path-to-your-download-folder/Singular-3-x-x-share.tar.gz | tar -pxf -
    (Do not forget to replace the string architecture as above.)
    This creates the directory Singular/3-x-x with the following subdirectories
    • (contains Singular and ESingular executables)
    • LIB (contains Singular libraries - *.lib files)
    • emacs (files for the Singular Emacs user interface)
    • info (info files of Singular manual)
    • html (html files of Singular manual)
    • doc (miscellaneous documentation files)
    • examples (Singular examples - *.sing files)

    For the executable to work, the directory layout must look pretty much like this; the executable looks for "sibling" directories at run-time to figure out where its Singular libraries and on-line documentation files are. These constraints on the local directory layout are necessary to avoid having to hard-code pathnames into the executables, or require that environment variables be set before running the executable. In particular, you must not move or copy the Singular executables to another place, but use soft-links instead.

The following steps are optional:

  • Arrange that typing Singular at the shell prompt starts up the installed Singular executable.

    If you have superuser privileges, do:

    ln -s `pwd`path-to-your-installation-folder/Singular/3-x-x/architecture/Singular /usr/local/bin/Singular-3-x-x

    ln -s `pwd`path-to-your-installation-folder/Singular/3-x-x/architecture/ESingular /usr/local/bin/ESingular-3-x-x

    ln -s /usr/local/bin/Singular-3-x-x /usr/local/bin/Singular

    ln -s /usr/local/bin/ESingular-3-x-x /usr/local/bin/ESingular
    Otherwise, append the directory `pwd`path-to-your-installation-folder/Singular/3-x-x/architecture/ to your $PATH environment variable. For the csh (or, tcsh) shell do:

    set path=(`pwd`path-to-your-installation-folder/Singular/3-x-x/architecture $path)
    For the bash (or, ksh) shell do:

    export PATH=`pwd`path-to-your-installation-folder/Singular/3-x-x/architecture/:$PATH

    You might also want to adjust your personal start-up files (~/.cshrc for csh, ~/.tcshrc for tcsh, or ~/.profile for bash) accordingly, so that the $PATH variable is set automatically each time you login.

    IMPORTANT: Do never move or copy the file Singular/3-x-x/architecture/Singular to another place, but use soft-links instead.

  • If you want to use any of following features of Singular, make sure that the respective programs are installed on your system:

    Feature Requires
    running ESingular, or Singular within Emacs Emacs version 20 or higher, or, XEmacs version 20.3 or higher (ESingular is only included in the Linux distribution, on other Unix platforms you can download the Singular emacs lisp files but we give no warranties for specific platforms).
    on-line info help info, or tkinfo texinfo browser programs
    TAB completion and history mechanism of ASCII-terminal interface shared readline library, i.e. /usr/lib/
    visualization of curves and surfaces surf version 0.9 or higher (only available for Linux and Solaris).
    Most of these programs can be downloaded from
  • Customize the on-line help system:

    By default, on-line help is displayed in the first available help browser defined in Singular/3-x-x/LIB/help.cnf.

    This behavior can be customized in several ways using the Singular commands system("--browser",) and system("--allow-net", 1) (or, by starting up Singular with the respective command line options).

    In particular, creating the file Singular/3-x-x/LIB/.singularrc and putting the Singular command system("--allow-net", 1); in it, allows the on-line help system to fetch its html pages from Singular's web site in case its local html pages are not found.

    We refer to the online manual for more details on customizing the on-line help system.

  • Assure that the Singular manual can be accessed from stand-alone texinfo browser programs such as info or Emacs:

    Add the line

    * Singular:(singular.hlp). A system for polynomial computations
    to your system-wide dir file (usually /usr/info/dir or /usr/local/info/dir and copy or soft-link the file Singular/3-x-x/info/singular.hlp to the directory of your dir file.
    This is not necessary for the use of the help system from within Singular.



  • General: Singular can not find its libraries or on-line help

    1. Make sure that you have read and/or execute permission the files and directories of the Singular distribution. If in doubt, cd to the directory where you unpacked Singular, and do (as root, if necessary):
      chmod -R a+rX Singular
    2. Start up Singular, and issue the command system("Singular");. If this does not return the correct and expanded location of the Singular executable, then you found a bug in Singular, which we ask you to report (see below).
    3. Check whether the directories containing the libraries and on-line help files can be found by Singular: If $bindir denotes the directory where the Singular executable resides, then Singular looks for library files as follows:
      (0) the current directory
      (1) all dirs of the environment variable SINGULARPATH
      (2) $bindir/LIB
      (3) $bindir/../LIB
      (4) /usr/local/Singular/3-x-x/LIB
      (4) /usr/local/Singular/LIB
      The on-line info files need to be at $bindir/../info and the html pages at $bindir/../html.

    You can inspect the found library and info/html directories by starting up Singular with the --version option, or by issuing the Singular command system("--version"); .

  • Under SuSE-Linux, ESingular does not display a prompt:

    This is due to the very restrictive access rights of /dev/pty* of the standard SuSE distribution (starting from version 6.3 on). As root, do one of the following: Either
    chmod 666 /dev/pty*
    chmod g+s $(which emacs) chgrp tty $(which emacs) chmod g+s $(which xemacs) chgrp tty $(which xemacs)


  • For HPUX systems:

    The /etc/termcap files which are pre-installed on these systems are broken which leads to messages like
    Name collision between 9826 9836
    when Singular is started. To fix this, you can get fixed termcap files from by downloading the files termcap- and either replace your /etc/termcap file by the file found there, or view, and redo the respective changes by diff'ing the downloaded and the original file.


  • For ix86-Linux systems:

    Due to some incompatibilities of shared libraries, the start-up of Singular might fail with messages like
    Can not find shared library ...
    For DEBIAN systems, try to do ln -s /usr/lib/ /usr/lib/
    If this fails (and on other systems) download and install Singular-3-x-x-ix86-Linux-static.tar.gz.


  • For AIX systems:

    The default info program of the system is not GNU's texinfo browser which is used to display the on-line documentation in the info format. Therefore, the distribution of the AIX executable already contains the info browser program. If you remove this program, make sure that the GNU info program is executed if you call 'info' from your shell.


  • For any other troubles:

    Please send an email to and include the header which is displayed by starting up Singular with the -v option, and a description of your machine (issue the command uname -a on your shell) in your report.