This repository has been archived on 2023-08-20. You can view files and clone it, but cannot push or open issues or pull requests.
yap-6.3/Logtalk/INSTALL

168 lines
8.1 KiB
Plaintext
Raw Normal View History

=================================================================
Logtalk - Object oriented extension to Prolog
Release 2.22.4
Copyright (c) 1998-2005 Paulo Moura. All Rights Reserved.
=================================================================
This file contains detailed instruction for installing and configuring
Logtalk. You should also consult the "misc/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.
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 multiple users, 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 "misc" sub-directory contains shell scripts for easy installation of
Logtalk on Windows, Unix, and Unix-like operating systems (for details,
see the "misc/NOTES" file). 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 "misc" 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 "misc/NOTES" file).
The "misc/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 "misc" 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/misc
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/misc
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 "misc" 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 "misc/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 and
compiler options which are used by Logtalk when compiling source files. For
a full description of these default flags and compiler options, consult the
"Running and debugging Logtalk programs" section of the User Manual. Some of
the default flags that you may want to change are: "portability", "altdirs",
"underscore_vars", "startup_message", "smart_compilation", 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".
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 "misc" 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.