1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339
|
@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
|