-
Notifications
You must be signed in to change notification settings - Fork 6
/
INSTALL
217 lines (156 loc) · 6.33 KB
/
INSTALL
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
---------------------------------------------
CafeOBJ Interpreter Installation Instructions
---------------------------------------------
============
Prerequisite
============
CafeOBJ interpreter is built on Common Lisp, thus you need
some Common Lisp system to install CafeOBJ. CafeOBJ can be
built on the following platforms:
(1) SBCL version 1.1.7 (or later) http://www.sbcl.org/
(2) Allegro CL version 8.0 (or later) http://franz.com/
(3) CLISP version 2.4.9 (or later) http://www.clisp.org/
At least one of these needs to be installed in the users' PATH.
Considerations concering redestribution
---------------------------------------
Building the CafeOBJ interpreter with SBCL allows for
redistribution without the need for SBCL being installed,
as the dump itself can be executed.
This is also possible with Allegro CL, but needs a specific
license obtainable from Franz.
With CLISP the interpreter has to be installed at the target
system.
========
BUILDING
========
Building is done in the usual way with running the following commands
in the source directory:
./configure <arguments>
make
(sudo) make install
See below for possible configuration.
======================
1) configure arguments
======================
a) Selection of a lisp platform
-------------------------------
Selection of the Common Lisp platform to build the CafeOBJ interpreter
is done with the configure option
--with-lisp
as in
./configure --with-lisp="platform"[,"platform"]
You can specify a list of interpreters to be used to build CafeOBJ.
The wrapper provides the command line option --engine to select one
of the underlying interpreters.
"platform" should be one of the followings, and should provide
the following command line program name
configure argument program name
sbcl sbcl -- SBCL
acl alisp -- Allegro CL
acl-standalone alisp -- Allegro CL with distribution license
clisp clisp -- CLISP
You must have one of these command in your PATH environment.
-with-lisp="platform" can be omitted, in this case it selects the
first interpreter found by testing in the following order:
acl-standalone, acl, sbcl, clisp
Finally, one can use
-with-lisp=all
which builds for all found Common Lisp platforms.
In case your interpreter is named different than the above, you
can override it with
--with-sbcl=<sbcl-name>
--with-acl=<acl-name>
--with-clisp=<clisp-name>
Using the cafeobj command line argument
--engine <engine>
one can select the engine at run time. By default the one first listed
in the configure call will be used.
b) Installation location
------------------------
Be default CafeOBJ is installed in GNU standard compliant directories,
that is
$prefix/bin/ -- cafeobj - a shell script that invokes the
necessary programs to start the CafeOBJ interpreter.
(configure option --bindir)
$prefix/lib/cafeobj-N.M/
-- dump files for the various lisp platforms
(configure option --libdir + cafeobj-N.M)
$prefix/share/cafeobj-N.M/lib/
-- standard libraries, if you made cafeobj with
PigNose, fopl.mod will be put here.
(configure option --datarootdir + cafeobj-N.M/lib)
$prefix/share/cafeobj-N.M/prelude/
-- cafeobj standard prelude files.
(configure option --datarootdir + cafeobj-N.M/prelude)
$prefix/share/doc/cafeobj/
-- documentation and example files
(configure option --docdir + cafeobj)
$prefix is by default /usr/local, but can be selected with
--prefix=<PATH>
during the configure run.
There is also
--enable-traditional-layout
which selects traditional layout of the files, which is
$prefix/bin/ -- cafeobj - a shell script that invokes the
necessary programs to start the CafeOBJ interpreter.
$prefix/cafeobj-N.M/bin/
-- necessary programs to start the CafeOBJ interpreter.
and the dump files for the various lisp platforms
$prefix/cafeobj-N.M/lib/
-- standard libraries, if you made cafeobj with
PigNose, fopl.mod will be put here.
$prefix/cafeobj-N.M/prelude/
-- cafeobj standard prelude files.
$prefix/cafeobj-N.M/doc/
-- documentation and example files
c) Rebuilding documentation pdfs
--------------------------------
The configure switch
--enable-rebuild-doc
triggers a rebuild of all pdfs. Since some of these need special fonts
and Japanese TeX systems to correctly produce pdfs, we recommend not
using this.
d) Emacs support file
---------------------
We distribute an Emacs major mode in cafeobj-mode.el. The configure
script will search for an installation of Emacs (binary emacs or xemacs)
and install the elisp file into the respective site-lisp path. The
selected destination can be adjusted with
--with-lispdir
Furthermore, the used emacs can be influenced with the EMACS and
EMACSLOADPATH environment variables.
===========================
2) Building the interpreter
===========================
Try building the CafeOBJ by invoking
make
This will make the needed CafeOBJ binaries within the
sub directories. If something fails for your system, and you want to
submit a bug report, you may wish to include your "config.status"
file, your host type, operating system and information about the
used Common Lisp interpreter including version number, make output,
and anything else you think will be helpful.
=======================
3) Installing the files
=======================
Invoke
make install
or, if you don't have permissions, maybe
sudo make install
This will install CafeOBJ interpreter (cafeobj).
Staged installes are supported in two ways:
make install DESTDIR=<path>
prefix all installations with $DESTDIR.
make install prefix=<path>
will override the prefix set during initial configuration. Be warned
that in this case the cafeobj script might not find the dumps.
===========
4) Clean up
===========
(optional)
By invoking
make clean
generated files are removed, but configuration remains as is. If you
want to go back to a clean state of pre-configuration, use
make distclean
-- EOF