-
Notifications
You must be signed in to change notification settings - Fork 9
/
INSTALL
148 lines (100 loc) · 5.06 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
This is the INSTALL file for Blocky.
This file contains help on getting Blocky (or an application built
with it) to run on your system.
If you are a Windows user, there's no reason to read this file,
because everything is self-contained.
If you are on GNU/Linux, you must install certain libraries through
your distributions' software installer: namely, sdl, sdl-image,
sdl-mixer, and sdl-ttf. You may additionally need to install the
corresponding *-dev versions of those packages.
This file also gives you instructions on how to download Blocky and
compile it from the source code. Unless you are planning to do this,
you can safely ignore the rest of this file.
This should be straightforward on Linux; Blocky also works on Windows
and Mac, but compiling Blocky on those platforms may require
additional steps (such as installing the included SDL binary DLL's in
the included win32/ subfolder of the Blocky source directory.)
More instructions for Mac and Windows will be available soon.
1. System Requirements for building Blocky (All Platforms)
- A Common Lisp implementation such as Steel Bank Common Lisp (see
platform-specific notes below for suggestions on SBCL; CLISP and
CCL have also been reported to work.)
A recent release of SBCL from sbcl.org is recommended. Please
see: http://sbcl.org/platform-table.html
- A working OpenGL implementation. Hardware acceleration is
strongly recommended. (Most fairly recent Mac and Windows
machines will have OpenGL drivers already, but GNU/Linux users
will need proper hardware drivers.
- Git, a distributed version control system client.
http://git-scm.com/
- (optional) A text editor (preferably Emacs or Vim;
http://www.gnu.org/software/emacs) If you use Emacs check out
SLIME (you may need the CVS version) and if you use Vim check
out SLIMV.
1a. System Requirements (Linux)
You must have the SDL (Simple Direct Media Layer) libraries
installed on your system. How to do this is beyond the scope of
this document. See http://www.libsdl.org for more information.
Your Linux distribution will most likely have SDL packages for sdl,
sdl-image, sdl-mixer, and sdl-ttf, all of which are required for to
compile Blocky. You may also need to install the sdl-*-dev packages
corresponding to each.
1b. System Requirements (Windows)
You will need a Windows version of SBCL from http://sbcl.org
1c. System Requirements (Macintosh)
[THIS SECTION REMAINS TO BE WRITTEN]
2. If you have not already done so, download Blocky:
mkdir ~/src
cd ~/src
git clone git://github.com/dto/blocky.git
3. Install Quicklisp
http://www.quicklisp.org/ It takes only a few moments to install
Quicklisp, and this is the best way to download and install all
the Common Lisp libraries that Blocky depends on---automatically.
After installing quicklisp you will see a notice about adding
Quicklisp to your Lisp startup file with (ql:add-to-init-file).
Doing this will make Quicklisp load automatically when you start
your Lisp implementation.
4. (OPTIONAL) Configure project folders
By default, new projects are created in ~/.blocky
The distribution contains a text configuration file called
BLOCKY-INIT.LISP; by default Blocky looks for it in the same
directory as the executable.
To run projects, Blocky needs a line like this added to the init
file so that it will know where to find them.
(setf blocky:*project-directories* '(#P"~/src/blocky/" #P"~/projects/"))
The first item should be the pathname of wherever you installed the
Blocky source tree. This is auto-detected as the current directory
if you don't set it. NOTE: These must be pathnames (prefixed with
#P) and must contain a trailing slash.
To use your home directory,
(setf *project-directories* (list #P"~/src/blocky/" #P"~/.blocky/" #P"~/"))
5. At the shell,
cd ~/src/blocky # or wherever you installed it...
sbcl
Once SBCL is started, enter (or cut and paste) and execute the
following Lisp expressions one at a time:
;; load dependencies via Quicklisp
(ql:quickload
'(:lispbuilder-sdl-mixer :lispbuilder-sdl-ttf
:lispbuilder-sdl-image :uuid :cl-opengl :cl-fad))
;; compile and load Blocky
(push #p"/path/to/blocky/" asdf:*central-registry*)
(asdf:load-system :blocky)
6. The work-in-progress game 2X0NG is written with Blocky, and can
be downloaded via git:
git clone [email protected]:dto/2x0ng.git
Then in SBCL:
(push #p"~/2x0ng/" asdf:*central-registry*)
(asdf:load-system :2x0ng)
(2x0ng:2x0ng)
Then, in-game: Arrow keys to move, Z to fire, Control R to reset
7. Getting help and reporting bugs
When reporting bugs, please use the issue reporting system at
Github if possible: https://github.com/dto/blocky/issues
If not possible or if other questions arise, you can email or IRC
me as follows:
You can also try the IRC channel:
irc.freenode.org #blocky
(also #lispgames)