Installation » History » Version 4

Marcus Pearce, 2012-02-02 02:07 PM

1 1 Marcus Pearce
h1. Installation
2 1 Marcus Pearce
3 1 Marcus Pearce
h2. Prerequisites
4 1 Marcus Pearce
5 2 Marcus Pearce
h3. Common Lisp
6 2 Marcus Pearce
7 1 Marcus Pearce
* "Steel Bank Common Lisp [SBCL]":http://www.sbcl.org/platform-table.html
8 1 Marcus Pearce
9 1 Marcus Pearce
* Many people find "Emacs":http://www.gnu.org/software/emacs/ with "Slime":http://common-lisp.net/project/slime/ useful for Common Lisp development.
10 1 Marcus Pearce
11 2 Marcus Pearce
h3. Common Lisp Libraries
12 2 Marcus Pearce
13 1 Marcus Pearce
* Common Lisp libraries: 
14 1 Marcus Pearce
** "UFFI":http://uffi.bi.com 
15 1 Marcus Pearce
** "CLSQL":http://clsql.b9.com
16 1 Marcus Pearce
** "CL-PPCRE":http://www.weitz.de/cl-ppcre/
17 1 Marcus Pearce
** "PS-Graph":http://www.cliki.net/psgraph
18 1 Marcus Pearce
** "Midi":http://www.cliki.net/midi
19 1 Marcus Pearce
20 1 Marcus Pearce
These can be obtained using asdf-install, e.g.: 
21 1 Marcus Pearce
22 1 Marcus Pearce
<pre>
23 1 Marcus Pearce
(require 'asdf-install)
24 1 Marcus Pearce
(asdf-install:install "clsql")
25 1 Marcus Pearce
</pre>
26 1 Marcus Pearce
27 3 Marcus Pearce
h3. An SQL database
28 2 Marcus Pearce
29 2 Marcus Pearce
I would recommend "SQLite":http://www.sqlite.org/
30 2 Marcus Pearce
31 2 Marcus Pearce
See the "CLSQL Manual":http://clsql.b9.com/manual/ for further information on which database systems you can use and how to access them from Common Lisp.
32 2 Marcus Pearce
33 1 Marcus Pearce
h2. Installation
34 1 Marcus Pearce
35 2 Marcus Pearce
h3. Download the software
36 1 Marcus Pearce
37 2 Marcus Pearce
* "MIPS":https://code.soundsoftware.ac.uk/hg/mips/archive/tip.zip
38 2 Marcus Pearce
* "AMuSE":https://code.soundsoftware.ac.uk/hg/amuse/archive/tip.zip
39 2 Marcus Pearce
* "amuse-viewpoints":https://code.soundsoftware.ac.uk/hg/amuse-viewpoints/archive/tip.zip
40 2 Marcus Pearce
* "mtp-admin":https://code.soundsoftware.ac.uk/hg/mtp-admin/archive/tip.zip
41 2 Marcus Pearce
* "ppm-star":https://code.soundsoftware.ac.uk/hg/ppm-star/archive/tip.zip
42 2 Marcus Pearce
* "idyom":https://code.soundsoftware.ac.uk/hg/amuse/idyom/archive/tip.zip
43 2 Marcus Pearce
44 2 Marcus Pearce
h3. Let lisp know where to find the software
45 2 Marcus Pearce
46 1 Marcus Pearce
Each subdirectory in the code contains one or more system definition files with a <code>.asd</code> extension. The location of these files needs to be registered as follows:
47 1 Marcus Pearce
48 1 Marcus Pearce
<pre>
49 1 Marcus Pearce
 (require :asdf) ; Load asdf.
50 1 Marcus Pearce
 (push "/full/path/to/system/file" asdf:*central-registry*) ; Tell asdf where each system is registered.
51 1 Marcus Pearce
</pre>
52 1 Marcus Pearce
53 4 Marcus Pearce
You may want to add these lines to your <code>.sbclrc</code> configuration file so that they are automatically loaded. 
54 1 Marcus Pearce
55 4 Marcus Pearce
An easy way to achieve the above is to symlink each <code>.asd</code> file to a single directory and push this directory to <code>asdf:*central-registry*</code> as shown above.
56 1 Marcus Pearce
57 1 Marcus Pearce
h3. Automated
58 1 Marcus Pearce
59 1 Marcus Pearce
Alternatively there is software available for managing library installation for common lisp:
60 1 Marcus Pearce
61 1 Marcus Pearce
* "Quicklisp":http://www.quicklisp.org/
62 1 Marcus Pearce
* "CLBuild":http://common-lisp.net/project/clbuild/
63 1 Marcus Pearce
* "CLBuild2":http://gitorious.org/clbuild2
64 1 Marcus Pearce
65 2 Marcus Pearce
These may also be used to install the dependencies listed above. WARNING: your mileage may vary.
66 2 Marcus Pearce
67 2 Marcus Pearce
68 2 Marcus Pearce
h3. Running the code
69 2 Marcus Pearce
70 2 Marcus Pearce
<pre>(asdf:oos 'asdf:load-op 'idyom)</pre>
71 2 Marcus Pearce
72 2 Marcus Pearce
should load the code. You may now proceed to the [[tutorial]].