This section contains some installation notes that are platform specific under UNIX.
gcc 2.x
. You need to use the Sun Workshop/Forte
compiler, version 5.0 or later. InstallSICStus
will try to find it
during installation but if that fails, you can set the environment
variable CC
to e.g. /opt/SUNWspro/bin/cc
before
invoking InstallSICStus
. Using gcc 3.x
does seem to work but has not yet
received much testing. To install with gcc 3.x
, set the environment
variable CC
appropriately before invoking InstallSICStus
.
library(bdb)
,
library(tcltk)
.
timeout
does not work with Java. The problems seems to be
a limitation in the Solaris setitimer
for process with multiple
threads. A possible workaround on Solaris 8 is to use an alternative
thread library by setting LD_LIBRARY_PATH
to
/usr/lib/lwp
. This alternative thread library is not available
prior to Solaris 8 and it is the default in Solaris 9.
library(tcltk)
requires Tk
, which is
not installed on Mac OS X by default (see Tcl/Tk Notes).
spld
will only work
if there is a properly configured subdirectory sp-3.11.2
in the same directory as the executable; see Runtime Systems on UNIX Target Machines.
Alternatively, the option --wrapper
can be passed to spld
.
In this case a wrapper script is created that will set up various
environment variables and invoke the real executable.
spld --resources ...
does not work, whereas
spld --static --resources ...
will. This is no great loss;
pre-linking dynamic foreign resources is pointless, at best.
BDB
, you may
need to set up DYLD_LIBRARY_PATH
so that the Mac OS X dynamic
linker can find them. When using the SICStus development executable
(sicstus
), a wrapper script does this automatically.
tcsh> limit data datasize 6144 kbytes bash> ulimit -d 6144This indicates that the maximum size of the data-segment is only 6 Mb. To remove the limit, do
tcsh> limit datasize unlimited datasize unlimited bash> ulimit -d unlimited bash> ulimit -d unlimited
Please note:limit
(ulimit
) is a shell built-in incsh
/tcsh
(sh
/bash
). It may have a different name in other shells.
Please note: The limit will also affect SICStus when started
from within Emacs, e.g. with M-x run-prolog. To change the
limit used by Emacs and its sub-processes (such as SICStus) you will
need to change the limit in the shell used to start Emacs. Alternatively
you can create a shell wrapper for the emacs
command.
spld --moveable
implies --wrapper
. This is due to
limitations in the IRIX run-time loader.
spld --moveable
. This should not be a
problem; pre-linked dynamic resources are not recommended anyway.
Large
Address-Space Model
. This is done automatically by spld
. If you
do not use spld
, you need to set this option yourself. This is
achieved by linking the executable using the -bmaxdata
option. An
alternative may be to set the environment variable LDR_CNTRL
appropriately. See the documentation for the AIX command ld
.
library(bdb)
does not work properly unless Berkeley DB is
built like this:
% make LIBSO_LIBS=-lpthread