This chapter assumes that the environment variable PATH
includes
<prefix>/bin
, where <prefix>
points to the SICStus
installation directory.
There is a public domain crypt utility available via anonymous FTP from
ftp://ftp.sics.se/archive/sicstus3/crypt.tar.gz
The enclosed README files describes how to compile it. See section Platform specific UNIX notes.
This is described in the file `INSTALL'.
These utility commands are implemented as shell scripts which are generated from templates at installation. The scripts may in some cases need to be changed to adapt to local variations etc. Given the information below, simply identify the compiler, linker and options in the scripts.
To compile the glue code file and user code, use the compiler options
assigned to INCR_CFLAGS
by ./configure
. In addition
also include -DSPDLL
.
The object files are then linked into a dynamic linked foreign resource.
For this you will normally use the linker whose name was assigned to
SHLD
by ./configure
and linker options assigned to
SHLDFLAGS
. The resource will consist of the file
ResourceName.Suffix where Suffix is the value assigned
to SHSFX
by ./configure
. The defaults are
SHLD= ld SHLDFLAGS= -shared SHSFX= so
E.g. on Sparc/SunOS 5.X:
% cc -c -DSPDLL glue_code.c % cc -c -DSPDLL mycode.c % ld -shared glue_code.o mycode.o -o myresource.so
Libraries needed by the resource should normally also be included in the link command line.
Functions in C++ files which should be called from Prolog must be enclosed like e.g:
extern "C" { void myfun(long i) {...}; };
To build a dynamic linked foreign resource with C++ code, you may (depending on platform) have to explicitly include certain libraries. E.g. on Sparc/SunOS 5.X using gcc:
% splfr .... +l -L/usr/gnu/lib/gcc-lib/sparc-sun-solaris2.4/2.7.0 -lgcc
The library path is installation dependent.
This section contains some installation notes which are platform specific under UNIX.
crypt
uility under Linux the program
makekey
must be linked with the flag -lcrypt
:
gcc -o makekey makekey.c -lcrypt
configure
under IRIX and HP/UX 9.x, the flag
--enable-cc
must be specified.
Go to the first, previous, next, last section, table of contents.