~ubuntu-branches/debian/squeeze/maxima/squeeze

« back to all changes in this revision

Viewing changes to INSTALL.lisp

  • Committer: Bazaar Package Importer
  • Author(s): Camm Maguire
  • Date: 2006-10-18 14:52:42 UTC
  • mto: (1.1.5 upstream)
  • mto: This revision was merged to the branch mainline in revision 4.
  • Revision ID: james.westby@ubuntu.com-20061018145242-vzyrm5hmxr8kiosf
ImportĀ upstreamĀ versionĀ 5.10.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
Maxima can now be built using a purely lisp-based procedure. This
2
 
procedure is not yet as polished as the GNU Autotools system described
3
 
in the file INSTALL.
 
1
Maxima can be built using a purely Lisp-based procedure.
 
2
This procedure is not yet as polished as the GNU Autotools system
 
3
described in the file INSTALL.
 
4
However, it may be more convenient on a system (e.g., Windows)
 
5
which does not have the GNU Autotools installed.
 
6
 
 
7
User feedback on this procedure would be greatly appreciated.
4
8
 
5
9
Note: xmaxima cannot be built using this procedure.
6
10
 
7
11
Note (2): Plotting on Windows does not (yet) work using this procedure.
8
12
 
 
13
 
9
14
To build Maxima:
10
15
 
11
 
1) Launch your lisp implementation.
12
 
 
13
 
2) Load the file configure.lisp.
14
 
 
15
 
3) Execute "(configure)". You will be prompted for several inputs. Hit
16
 
   return to use the default values. The configure process can be
17
 
   automated through the use of optional arguments to configure. See
18
 
   the file configure.lisp for details.
19
 
 
20
 
4) Change to the src directory.
 
16
(0) cd to the top-level Maxima directory (i.e., the directory 
 
17
    which contains src/, tests/, share/, and other directories).
 
18
 
 
19
(1) Launch your Lisp implementation.
 
20
 
 
21
(2) Load the file configure.lisp:
 
22
 
 
23
    (load "configure.lisp")
 
24
 
 
25
(3) Generate configuration files:
 
26
 
 
27
    (configure)
 
28
 
 
29
    You will be prompted for several inputs.
 
30
    Press carriage return to accept the default values.
 
31
 
 
32
    The configure process can be automated through the use
 
33
    of optional arguments to configure.
 
34
    See the file configure.lisp for details.
 
35
 
 
36
(4) Quit Lisp,
 
37
    
 
38
    (quit)
 
39
 
 
40
    and cd to the directory src/.
 
41
 
 
42
(4.1) GCL only: Create these directories if they do not already exist:
 
43
 
 
44
    binary-gcl
 
45
    binary-gcl/numerical
 
46
    binary-gcl/numerical/slatec
21
47
 
22
48
Maxima builds with defsystem. The file maxima-build.lisp is provided
23
49
for rudimentary guidance in using defsystem. Experts should feel free
24
50
to subsitute their knowledge of defsystem for the following steps.
25
51
 
26
 
5) Load maxima-build.lisp.
27
 
 
28
 
6) Execute "(maxima-compile)".
29
 
 
30
 
7) Optionally, quit Lisp at this point and restart.
31
 
 
32
 
8) Execute "(maxima-load)".
33
 
 
34
 
9) Dump an image, using (user::run) for the startup function if
35
 
   possible. The command "(maxima-dump)" will work for a (very)
36
 
   limited set of Lisp(s).
37
 
 
38
 
Two scripts are provided to act as front-ends to the dumped lisp
39
 
image. The script "maxima" requires Bourne shell. Even if Bourne shell
40
 
is not available on your system, it is worth looking at the way images
41
 
are invoked at the end of the script. You will have to manually "chmod
42
 
+x maxima". The file "maxima.bat" provides a Windows batch file
43
 
interface roughly equivalant to "maxima".
44
 
 
45
 
User feedback on this procedure would be greatly appreciated.
 
 
b'\\ No newline at end of file'
 
52
(5) Restart Lisp, and load maxima-build.lisp:
 
53
 
 
54
    (load "maxima-build.lisp")
 
55
 
 
56
(6) Compile the Lisp source code:
 
57
 
 
58
    (maxima-compile)
 
59
 
 
60
    Clisp only: Clisp complains about SETQ applied to a symbol in
 
61
    a locked package when compiling src/cpoly.lisp.
 
62
    When Clisp asks you if you want to allow it, enter "continue" (without quote marks).
 
63
 
 
64
(7) Quit Lisp, and restart Lisp.
 
65
 
 
66
(8) Load the compiled Lisp files:
 
67
 
 
68
    (load "maxima-build.lisp")
 
69
    (maxima-load)
 
70
 
 
71
(9) Dump an image, and if the Lisp implementation allows one to
 
72
    specify a start-up function, specify USER::RUN.
 
73
 
 
74
    There is a function MAXIMA-DUMP to carry out those steps.
 
75
    At present it works only for Clisp.
 
76
 
 
77
    Clisp:
 
78
 
 
79
    (maxima-dump)
 
80
     --- or ---
 
81
    (ext:saveinitmem "binary-clisp/maxima.mem" :init-function 'user::run)
 
82
 
 
83
    GCL: (GCL terminates after saving the image)
 
84
 
 
85
    (si:save-system "binary-gcl/maxima")
 
86
 
 
87
    CMUCL: (CMUCL terminates after saving the image)
 
88
 
 
89
    (extensions:save-lisp "binary-cmucl/maxima.core" :init-function 'user::run)
 
90
 
 
91
    SCL: (SCL terminates after saving the image)
 
92
 
 
93
    (extensions:save-lisp "binary-scl/maxima.core" :init-function 'user::run)
 
94
 
 
95
(10) Execute the saved image.
 
96
 
 
97
    Each Lisp implementation allows one to specify the name of the
 
98
    image to be executed in a slightly different way.
 
99
    Two scripts, maxima and maxima.bat,
 
100
    are provided to specify the command line options appropriately.
 
101
 
 
102
    Unix systems and Windows with Bourne shell:
 
103
 
 
104
    sh maxima
 
105
     --- or ---
 
106
    chmod a+x maxima
 
107
    ./maxima
 
108
 
 
109
    (Even if Bourne shell is not available on your system,
 
110
    it is worth looking at the way images are invoked at the end of the script.)
 
111
 
 
112
    Windows without Bourne shell:
 
113
 
 
114
    maxima.bat
 
115
 
 
116
(11) Test the build. At the Maxima prompt, enter:
 
117
 
 
118
    run_testsuite();
 
119