80c28e1507
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1357 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
176 lines
8.5 KiB
Plaintext
176 lines
8.5 KiB
Plaintext
=================================================================
|
|
Logtalk - Object oriented extension to Prolog
|
|
Release 2.25.1
|
|
|
|
Copyright (c) 1998-2005 Paulo Moura. All Rights Reserved.
|
|
=================================================================
|
|
|
|
|
|
This file contains detailed instructions for installing and configuring
|
|
Logtalk. You should also consult the "scripts/NOTES" file for a description
|
|
of a set of shell scripts that might be used for Logtalk installation on
|
|
some operating-systems and for easy Logtalk integration with popular
|
|
Prolog compilers.
|
|
|
|
Note that the broad compatibility of Logtalk, both with Prolog compilers and
|
|
operating-systems, together with all the possible user scenarios, means that
|
|
installation can vary from very simple by running a couple of scripts to the
|
|
need of patching both Logtalk and Prolog compilers to workaround the lack of
|
|
strong Prolog standards.
|
|
|
|
|
|
1. LOGTALK INSTALLATION
|
|
|
|
Installing Logtalk can be as simple as decompressing the downloaded archive
|
|
and copying the resulting directory to a suitable location. This location
|
|
depends on the working environment and on the number of users. The Logtalk
|
|
directory can reside in any user accessible location. Whenever possible, it
|
|
is recommended that Logtalk be installed by a user with administrative rights,
|
|
as described below. This leads to a setup where each Logtalk user may freely
|
|
try and modify the provided examples, library, and configuration files with
|
|
the option of, at any time, restoring the files to its original state by
|
|
simply running one of the provided scripts.
|
|
|
|
|
|
* Installing for a single user with no administrative rights:
|
|
|
|
In the case of a single user with no administrative rights, the Logtalk
|
|
directory may simply be copied to the user home directory.
|
|
|
|
|
|
* Installing for one or more users by a user with administrative rights:
|
|
|
|
In the case of installation by a user with administrative rights, the Logtalk
|
|
directory can be copied to any location that its accessible by all the users
|
|
(assuming that copying the Logtalk directory to each user home directory is,
|
|
for some reason, not feasible or desired).
|
|
|
|
The "scripts" sub-directory contains shell scripts for easy installation of
|
|
Logtalk on MacOS X, Windows, Linux, and Unix-like operating systems (see the
|
|
"scripts/NOTES" file for details).
|
|
|
|
After running the appropriated script for your operating-system, the second
|
|
step will be to run the Prolog integration scripts that you find on the
|
|
"scripts" sub-directory, assuming that your favorite Prolog compilers are
|
|
supported (if that is not the case, don't worry: just follow the steps
|
|
described in the "QUICK_START" file). The third step is for each user to
|
|
make a local copy of the Logtalk user-modifiable files to its home directory.
|
|
This allows each user to easily customize Logtalk to its needs. These copies
|
|
can be easily made by instructing end-users to simply run the shell command
|
|
"cplgtdirs" (the corresponding scripts are described in the "scripts/NOTES"
|
|
file).
|
|
|
|
The "scripts/lgt_install.*" installation scripts make all files read-only in
|
|
order to avoid user tempering. This is a convenient setup for computer labs,
|
|
given that making directories world-writable is a security risk. Of course,
|
|
the local copies made by the "cplgtdirs" scripts have both read and write
|
|
permissions for the user running the script.
|
|
|
|
When used with one of the Prolog compilers for which an integration script
|
|
is provided on the "scripts" directory, this setup as the advantage of
|
|
allowing each end-user to independently customize default compilation options
|
|
and library paths.
|
|
|
|
|
|
2. LOGTALK CONFIGURATION
|
|
|
|
2.1 Setting environment variables
|
|
|
|
You need to set two environment variables, LOGTALKHOME and LOGTALKUSER. The
|
|
environment variable LOGTALKHOME should point to the Logtalk installation
|
|
directory. The environment variable LOGTALKUSER should point to a directory
|
|
in your home directory where you want to store the user-specific Logtalk files
|
|
(for example, ~/logtalk). Both environment variables may be set for all users
|
|
by a user with administration privileges. The two environment variables can
|
|
have the same value if you are the only Logtalk user on your computer and if
|
|
you have full permissions to the Logtalk installation directory. In addition,
|
|
you may want to add the Logtalk sub-directory "xml", which contains useful
|
|
scripts for processing XML documenting files, to your execution path.
|
|
|
|
* Unix and Unix-like systems:
|
|
|
|
If you use a csh shell, add the following line to your ~/.cshrc file:
|
|
|
|
setenv LOGTALKHOME /your/logtalk/installation/directory
|
|
setenv LOGTALKUSER $HOME/logtalk
|
|
setenv PATH $PATH:$LOGTALKUSER/xml:$LOGTALKHOME/scripts
|
|
|
|
If you use a bash shell, add the following lines to your ~/.profile file:
|
|
|
|
LOGTALKHOME=/your/logtalk/installation/directory
|
|
LOGTALKUSER=$HOME/logtalk
|
|
PATH=$PATH:$LOGTALKUSER/xml:$LOGTALKHOME/scripts
|
|
export PATH LOGTALKHOME LOGTALKUSER
|
|
|
|
When using the provided shell script for installing Logtalk, a symbolic link
|
|
to the Logtalk installation directory is automatically created. The link is
|
|
named "logtalk". In this case, you may use this symbolic link to define the
|
|
LOGTALKHOME environment variable in order to avoid breaking it when upgrading
|
|
Logtalk.
|
|
|
|
* Windows systems:
|
|
|
|
In Windows 95/98/ME, environment variables are defined in the "autoexec.bat"
|
|
file (you will need to reboot after editing the file):
|
|
|
|
SET LOGTALKHOME=C:\your\logtalk\installation\folder\
|
|
SET LOGTALKUSER=%HOMEPATH%\logtalk
|
|
|
|
In Windows 2000/XP, environment variables are defined using the System
|
|
properties control panel (if you are a system administrator, you should
|
|
use the JScript install script provided in the "scripts" sub-directory;
|
|
this script sets the LOGTALKHOME environment variable for all users and
|
|
also sets the LOGTALKUSER environment variable for the administrator user
|
|
running the script).
|
|
|
|
|
|
2.2 Setting library paths
|
|
|
|
In Logtalk, a library is simply a directory containing source files. Library
|
|
paths can be declared using a dynamic predicate. This allows compiling and
|
|
loading of libraries and library files to be performed without worries about
|
|
library paths. Assuming that you have used the "scripts/cplgtdirs.*" shell
|
|
scripts for making a copy of the user-modifiable Logtalk files, you will find
|
|
in the "$LOGTALKUSER/libpaths" directory a sample file which, when loaded,
|
|
defines the library paths for the Logtalk standard library and for all the
|
|
supplied examples. This file may need to be edited to match your Logtalk
|
|
installation and your Prolog compiler and operating-system requirements. For
|
|
more details, see the file "$LOGTALKUSER/libpaths/NOTES".
|
|
|
|
|
|
2.3 Customizing Prolog configuration files
|
|
|
|
Logtalk interfaces with a specific Prolog compiler via a configuration file
|
|
that can be found on the "$LOGTALKUSER/configs" directory. These configuration
|
|
files can be customized by changing the values of the default flags that are
|
|
used by Logtalk when compiling source files. For a full description of these
|
|
default flags, consult the "Running and debugging Logtalk programs" section of
|
|
the User Manual. Some of the default flags that you may want to change are:
|
|
"smart_compilation", "startup_message", "portability", "underscore_vars",
|
|
"altdirs", and the set of documentation-related flags ("xml", "xsl", "xmlspec",
|
|
and "doctype"). Be sure to read the "$LOGTALKUSER/configs/NOTES" file for
|
|
Prolog specific notes; some Prolog compilers do not support the whole range of
|
|
compilation flags.
|
|
|
|
|
|
2.4 Customizing documentation processing scripts and supporting files
|
|
|
|
Logtalk provides, in the "$LOGTALKUSER/xml" directory, a set of shell scripts,
|
|
CSS and XSLT style-sheets, and DTD and XML Schema files for processing the XML
|
|
documenting files that are automatically generated when you compile source
|
|
files. You may want to customize these scripts and their supporting files to
|
|
modify the layout or style of the resulting PDF/(X)HTML files or to write new
|
|
scripts and transformations to generate other formats. For more details, see
|
|
the file "$LOGTALKUSER/xml/NOTES".
|
|
|
|
|
|
3. CREATING NEW PROLOG TOP-LEVELS FOR AUTOMATIC LOADING OF LOGTALK
|
|
|
|
Most Prolog compilers allows the user to define an initialization file that
|
|
is automatically consulted at startup. This initialization file may contain
|
|
directives for loading other files, such as the Logtalk configuration file
|
|
and the Logtalk compiler. The "$LOGTALKHOME/scripts" sub-directory contains
|
|
several scripts for automating the creation of these initialization files
|
|
for some Prolog compilers. In addition, be sure to read the "configs/NOTES"
|
|
file notes on the Prolog compilers that you intend to use.
|