123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340 |
- @comment -*-texinfo-*-
- @comment Id: INSTALL_unix.texi,v 1.1 2003/08/08 14:27:06 pertusus Exp $
- @c FILE: INSTALL_unix.texi
- @c PURPOSE: Installation instruction for Singular on Unix
- @c
- @ifclear VERSION
- @include version.texi
- @end ifclear
- @ifclear singularmanual
- @majorheading Unix installation instructions for @sc{Singular} version @value{VERSION}
- @end ifclear
- @ifclear UNAME
- @set _UNAME <uname>
- @end ifclear
- @ifset UNAME
- @include uname.texi
- @end ifset
- To install @sc{Singular} on a
- @ifset UNAME
- @value{_UNAME}
- @end ifset
- @ifclear UNAME
- Unix
- @end ifclear
- platform, you need the following two
- archives:
- @table @code
- @item Singular-@value{VERSION}-share.tar.gz
- contains architecture independent data like documentation and libraries
- (alternatively, you may also download
- @code{Singular-@value{VERSION}-share.zip}).
- @item Singular-@value{VERSION}-@value{_UNAME}.tar.gz
- contains architecture dependent executables, like the @sc{Singular}
- program.
- @end table
- @ifclear UNAME
- @*
- @code{@value{_UNAME}} is a description of the processor and operating system
- for which @sc{Singular} is compiled (e.g, @code{ix86-Linux}). Please contact us if
- you can not find an appropriate architecture dependent archive.
- @end ifclear
- You can obtain these (and other) archives from
- @display
- @uref{ftp://www.mathematik.uni-kl.de/pub/Math/Singular}.
- @end display
- @include register.texi
- @heading To install SINGULAR
- Make sure that you have approximately 12MByte of free disk space and follow
- these steps.
- @enumerate
- @item
- Simply change to the directory in which you wish to install
- @sc{Singular} (usually wherever you install 3rd-party software), for example:
- @smallexample
- cd /usr/local
- or
- mkdir install;cd install
- (you do not need root privileges in this case)
- @end smallexample
- @sc{Singular} specific subdirectories will be created in such a way
- that multiple versions and multiple architecture dependent files
- of @sc{Singular} can peaceably coexist under the same @code{/usr/local}
- tree.
- @item
- Unpack the archives:
- @smallexample
- gzip -dc <path_to>/Singular-@value{VERSION}-@value{_UNAME}.tar.gz | tar -pxf -
- gzip -dc <path_to>/Singular-@value{VERSION}-share.tar.gz | tar -pxf -
- @end smallexample
- @c version 2-0-x does not have *-share.zip:
- @c If you have downloaded @code{Singular-@value{VERSION}-share.zip},
- @c unpack with
- @c @smallexample
- @c unzip -u Singular-@value{VERSION}-share.zip
- @c @end smallexample
- This creates the the directory Singular/@value{VERSION} with
- @multitable @columnfractions .36 .64
- @item (sub)directories
- @tab which contain
- @item @code{@value{_UNAME}}
- @tab @code{Singular} and @code{ESingular} executables
- @item @code{LIB}
- @tab @sc{Singular} libraries (@code{*.lib} files)
- @item @code{emacs}
- @tab files for the @sc{Singular} Emacs user interface
- @item @code{info}
- @tab info files of @sc{Singular} manual
- @item @code{html}
- @tab html files of @sc{Singular} manual
- @item @code{doc}
- @tab miscellaneous documentation files
- @item @code{examples}
- @tab @sc{Singular} examples (@code{*.sing} files)
- @end multitable
- 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 @sc{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 @strong{must not move or copy}
- the @sc{Singular} executables to another place, but use soft-links
- instead.
- @end enumerate
- The following steps are optional:
- @itemize @bullet
- @item
- Arrange that typing @code{Singular} at the shell prompt starts up the
- installed @sc{Singular} executable.
- If you have root permission, do:
- @smallexample
- ln -s `pwd`/Singular/@value{VERSION}/@value{_UNAME}/Singular /usr/local/bin/Singular-@value{VERSION}
- ln -s `pwd`/Singular/@value{VERSION}/@value{_UNAME}/ESingular /usr/local/bin/ESingular-@value{VERSION}
- ln -s /usr/local/bin/Singular-@value{VERSION} /usr/local/bin/Singular
- ln -s /usr/local/bin/ESingular-@value{VERSION} /usr/local/bin/ESingular
- @end smallexample
-
- Otherwise, append the directory
- @code{`pwd`/Singular/@value{VERSION}/@value{_UNAME}/} to your @code{$PATH}
- environment variable. For the @code{csh} (or, @code{tcsh}) shell do:
- @smallexample
- set path=(`pwd`/Singular/@value{VERSION}/@value{_UNAME} $path)
- @end smallexample
- For the @code{bash} (or, @code{ksh}) shell do:
- @smallexample
- export PATH=`pwd`/Singular/@value{VERSION}/@value{_UNAME}/:$PATH
- @end smallexample
- You also might want to adjust your personal start-up files
- (@code{~/.cshrc} for @code{csh}, @code{~/.tcshrc} for @code{tcsh}, or
- @code{~/.profile} for @code{bash}) accordingly,
- so that the @code{$PATH} variable is set automatically each time you login.
- @strong{IMPORTANT:} Do @emph{never} move or copy the file
- @code{Singular/@value{VERSION}/@value{_UNAME}/Singular} to another
- place, but use soft-links instead.
- @item
- If you wish to use any of following features of
- @sc{Singular}, make sure that the respective programs are installed on your system:
- @multitable @columnfractions .5 .5
- @item @strong{Feature} @tab @strong{Requires}
- @item running @code{ESingular}, or @code{Singular} within Emacs
- @tab @uref{http://www.fsf.org/software/emacs/emacs.html,,Emacs} version
- 20 or higher, or, @uref{http://www.xemacs.org,,XEmacs} version 20.3 or
- higher (ESingular is only included in the Linux distribution,
- on other Unix platforms you can download the
- @uref{ftp://www.mathematik.uni-kl.de/pub/Math/Singular/src/,,
- Singular emacs lisp files} but we give no warranties for specific platforms).
- @item on-line @code{html} help
- @tab @uref{http://www.netscape.com,,netscape} browser
- @item on-line @code{info} help
- @tab @uref{http://www.texinfo.org,,info}, or
- @uref{http://math-www.uni-paderborn.de/~axel/tkinfo/,,tkinfo} texinfo browser programs
- @item TAB completion and history mechanism of ASCII-terminal interface
- @tab shared @uref{ftp://ftp.de.uu.net/pub/gnu/readline/,,readline}
- library, i.e. @code{/usr/lib/libreadline.so}
- @item visualization of curves and surfaces
- @tab
- @uref{http://www.mathematik.uni-mainz.de/AlgebraischeGeometrie/surf/surf.shtml,,surf}
- version 0.9 or higher (only available for Linux and Solaris).
- @end multitable
- You may download most of these programs from
- @display
- @uref{ftp://www.mathematik.uni-kl.de/pub/Math/Singular/utils/}.
- @end display
- @item Customize the on-line help system:
- By default, on-line help is displayed in the @code{html} format using
- the @code{netscape} program.
- However, this behavior can be customized in several ways
- using the @sc{Singular} commands @code{system("--browser",<browser>)}
- and @code{system("--allow-net", 1)} (or, by starting up @sc{Singular}
- with the respective command line options).
- In particular, creating the file
- @code{Singular/@value{VERSION}/LIB/.singularrc} and putting the
- @sc{Singular} command
- @smallexample
- system("--allow-net", 1);
- @end smallexample
- in it, allows the on-line help system to fetch its @code{html} pages
- from @uref{http://www.singular.uni-kl.de, Singular's WWW
- home site}
- in case its local html pages are not found. That is, you may delete your
- local html pages, after setting this option.
- See also
- @ifset singularmanual
- @ref{The online help system}, @ref{Command line options}, and
- @ref{Startup sequence},
- @end ifset
- @ifclear singularmanual
- the sections @emph{The online help system}, @emph{Command line options}, and
- @emph{Startup sequence} in the @sc{Singular} manual
- @end ifclear
- for more details on customizing the on-line help system.
- @item
- Add the line
- @smallexample
- * Singular:(singular.hlp). A system for polynomial computations
- @end smallexample
- to your system-wide @code{dir} file (usually @code{/usr/info/dir} or
- @code{/usr/local/info/dir} and copy or soft-link the file
- @code{Singular/@value{VERSION}/info/singular.hlp}
- to the directory of your @code{dir} file.
- @*This assures that the
- @sc{Singular} manual can be accessed from stand-alone texinfo
- browser programs such as @code{info} or @code{Emacs}.
- (It is not necessary for the use of the help system from within @code{Singular}.)
- @end itemize
- @heading Troubleshooting
- @itemize @bullet
- @item General: @sc{Singular} can not find its libraries or on-line help
- @enumerate
- @item
- Make sure that you have read and/or execute permission the files and
- directories of the Singular distribution. If in doubt, @code{cd} to the
- directory where you unpacked @sc{Singular}, and do (as root, if
- necessary):
- @smallexample
- chmod -R a+rX Singular
- @end smallexample
- @item
- Start up @sc{Singular}, and issue the command @code{system("Singular");}.
- If this does not return the correct and expanded location of the
- @sc{Singular} executable, then you found a bug in @sc{Singular}, which we
- ask you to report (see below).
- @item
- Check whether the directories containing the libraries and on-line help
- files can be found by @sc{Singular}: If @code{$bindir} denotes the
- directory where the @sc{Singular} executable resides, then @sc{Singular}
- looks for library files as follows:
- @* (0) the current directory
- @* (1) all dirs of the environment variable SINGULARPATH
- @* (2) @code{$bindir/LIB}
- @* (3) @code{$bindir/../LIB}
- @* (4) @code{/usr/local/Singular/@value{VERSION}/LIB}
- @* (4) @code{/usr/local/Singular/LIB}
- @* The on-line @code{info} files need to be at @code{$bindir/../info} and the
- @code{html} pages at @code{$bindir/../html}.
- @end enumerate
- You can inspect the found library and @code{info}/@code{html}
- directories by starting up @sc{Singular} with the
- @code{--version} option, or by issuing the @sc{Singular} command
- @code{system("--version");}.
- @item Under SuSE-Linux, @sc{ESingular} does not display a prompt:
- @cindex SuSE, ESingular bug
- @cindex ESingular, no prompt
- @cindex bug, ESingular
- This is due to the very restrictive access rights of @code{/dev/pty*} of
- the standard @uref{http:/www.suse.de,SuSE} distribution (starting from
- version 6.3 on). As root, do one of the following: Either
- @example
- chmod 666 /dev/pty*
- @end example
- or,
- @example
- chmod g+s $(which emacs)
- chgrp tty $(which emacs)
- chmod g+s $(which xemacs)
- chgrp tty $(which xemacs)
- @end example
- See also @uref{http://sdb.suse.de/sdb/de/html/ke_devpts-63.html} for
- details.
- @item For @code{HPUX} systems:
- @*The /etc/termcap files which are pre-installed on these systems are
- broken which leads to messages like
- @example
- Name collision between 9826 9836
- @end example
- when @sc{Singular} is started. To fix this, you can get fixed termcap
- files from @uref{ftp://www.mathematik.uni-kl.de/pub/Math/Singular/utils}
- by downloading the files termcap-<uname-description> and either
- replace your /etc/termcap file by the file found there, or view, and
- redo the respective changes by @code{diff}'ing the downloaded and the
- original file.
- @item For @code{ix86-Linux} systems:
- @*Due to some incompatibilities of shared libraries, the start-up of
- @sc{Singular} might fail with messages like
- @example
- Can not find shared library ...
- @end example
- For DEBIAN systems, try to do
- @code{ln -s /usr/lib/libncurses.so /usr/lib/libncurses.so.4}.
- @*If this fails (and on other systems)
- download and install
- @code{Singular-@value{VERSION}-ix86-Linux-static.tar.gz}.
- @item For @code{AIX} systems:
- @*The default @code{info} program of the system is not GNU's texinfo
- browser which is used to display the on-line documentation in the
- @code{info} format. Therefore, the distribution of the AIX executable
- already contains the @code{info} browser program.
- If you remove this program, make sure that the GNU
- @code{info} program is executed if you call '@code{info}' from your shell.
- @item For any other troubles:
- @*Please send an email to @email{singular@@mathematik.uni-kl.de}
- and include the header which is displayed by starting up @sc{Singular}
- with the @code{-v} option, and a description of your machine (issue the
- command @code{uname -a} on your shell) in your report.
- @end itemize
- @include info.texi
- @ifclear singularmanual
- GOOD LUCK and ENJOY!
- Your @sc{Singular} team.
- @end ifclear
|