]> git.donarmstrong.com Git - lilypond.git/blob - INSTALL.txt
release: 0.1.65
[lilypond.git] / INSTALL.txt
1
2
3
4 INSTALL(1)            LilyPond documentation           INSTALL(1)
5
6
7 NAME
8        INSTALL - installing GNU LilyPond
9
10 DESCRIPTION
11        This page documents installation and compilation of GNU
12        LilyPond
13
14 ABSTRACT
15        You do something which looks remotely like
16
17                configure
18                make
19                make install
20
21        The detailed instructions follow here.
22
23 PREREQUISITES
24        For compilation you need.
25
26        o    A GNU system: GNU LilyPond is known to run on these
27             GNU systems: Linux (PPC, intel), FreeBSD, AIX,
28             NeXTStep, IRIX, Digital Unix and Solaris.
29
30             If you have the Cygnus WINDOWS32 port of the GNU
31             utils, it will even work in Windows NT/95, but we
32             don't promise to support it.
33
34        o    GNU C++ version 2.7 or newer (yes, 2.8 is fine).
35
36        o    Python
37
38 RUNNING
39        GNU LilyPond does use a lot of resources. For operation
40        you need the following:
41
42        o    TeX
43
44        o    A PostScript printer and/or viewer (such as
45             Ghostscript) is strongly recommended.  Xdvi will show
46             all embedded PostScript too if you have Ghostscript
47             installed.
48
49 RECOMMENDED
50        Although not strictly necessary, these are recommended to
51        have.
52
53        o    GNU make.
54
55        o    Flex (version 2.5.4 or newer).
56
57        o    Bison (version 1.25 or newer).
58
59        o    Perl-5.  Most documentation was created with the
60             perl's Plain Old Documentation. (I use 5.003)
61
62
63
64 15/May/98                LilyPond 0.1.65                        1
65
66
67
68
69
70 INSTALL(1)            LilyPond documentation           INSTALL(1)
71
72
73        o    Python.  Although perl is nice, python is better.  We
74             will shift towards python for build scripts
75
76        o    GNU find
77
78        o    A fast computer (a full page of music typically takes
79             1 minute on my 486/133, using the --enable-checking
80             compile. It's lot slower than most MusiXTeX
81             preprocessors)
82
83 WEBSITE
84        If you want to auto-generate Lily's website, you'll need
85        some additional conversion tools.
86
87        o    xpmtoppm (from the Portable Bitmap Utilities)
88             (included within the RedHat package libgr-progs).
89
90        o    Bib2html
91             (http://pertsserver.cs.uiuc.edu/~hull/bib2html.)
92             Which, in turn depends on Man2htlm
93             (http://askdonald.ask.uni-karlsruhe.de/
94             hppd/hpux/Networking/WWW/Man2html-1.05) for proper
95             installation (ugh).  TeTeX users, don't forget to
96             rerun texhash.
97
98 CONFIGURING and COMPILING
99        to install GNU LilyPond, simply type:
100
101                configure
102                make
103                make install
104
105        This will install the following files:
106
107                /usr/local/man/man1/mi2mu.1
108                /usr/local/man/man1/convert-mudela.1
109                /usr/local/man/man1/mudela-book.1
110                /usr/local/man/man1/lilypond.1
111                /usr/local/lib/libflower.{so,a}
112                /usr/local/bin/lilypond
113                /usr/local/bin/mi2mu
114                /usr/local/share/lilypond/*
115                /usr/lib/texmf/texmf/tex/lilypond/*
116
117        The TeX include directory is detected dynamically, but it
118        can be adjusted with --enable-tex-prefix and --enable-tex-
119        dir. The above assumes that you are root and have the GNU
120        development tools, and your make is GNU make.  If this is
121        not the case, you can adjust your environment variables to
122        your taste:
123
124                export CPPFLAGS="-I /home/me/my_include -DWEIRD_FOOBAR"
125                configure
126
127
128
129
130 15/May/98                LilyPond 0.1.65                        2
131
132
133
134
135
136 INSTALL(1)            LilyPond documentation           INSTALL(1)
137
138
139        CPPFLAGS are the preprocessor flags.
140
141        the configure script is Cygnus configure, and it will
142        accept --help. If you are not root, you will probably have
143        to make it with
144
145                configure --prefix=/home/me_myself_and_I/
146
147        In this case, you will have to set MFINPUTS, and TEXINPUTS
148        accordingly.
149
150        If you want to install GNU LilyPond in /usr/local, and
151        your TeX has no default hooks for local stuff (mine is
152        broken too), you can do:
153
154                configure --prefix=/usr/local --enable-tex-prefix=/usr/lib/texmf
155
156        Since GNU LilyPond currently is beta, you are advised to
157        also use
158
159                --enable-debugging
160                --enable-checking
161
162        other options include:
163
164        --enable-shared
165            Make a shared library (gnu/linux, solaris (?) only )
166
167        --enable-printing
168            Enable debugging print routines (lilypond -d option)
169
170        --enable-optimise
171            Set maximum optimisation: compile with -O2
172
173        --enable-profiling
174            Compile with support for profiling
175
176        --enable-tex-prefix
177            Set the directory where TeX and Metafont live
178
179        --enable-tex-dir
180            Set then directory TeX input is in (detected as a
181            subdir of tex-prefix).  This should be a directory
182            that is reachable both for tex and latex.  On my
183            system the best choice would be
184            /usr/lib/texmf/texmf/tex/generic//.
185
186        --enable-mf-dir
187            Set the directory mf input is in (idem).   On my
188            system the best choice would be
189            /usr/lib/texmf/texmf/fonts/source/public/.
190
191        --enable-config
192            Output to different configuration files.  Needed for
193
194
195
196 15/May/98                LilyPond 0.1.65                        3
197
198
199
200
201
202 INSTALL(1)            LilyPond documentation           INSTALL(1)
203
204
205            multi-platform builds
206
207        All options are documented in the configure help The
208        option --enable-optimise is recommended for Real Life
209        usage.
210
211        If you do
212
213                make all
214
215        everything will be compiled, but nothing will be
216        installed.  The resulting binaries can be found in the
217        subdirectories out/ (which contain all files generated
218        during compilation).
219
220 CONFIGURING FOR MULTIPLE PLATFORMS
221        If you want to compile LilyPond with different
222        configuration settings, then, you can use the --enable-
223        config option.  Example: suppose I want to build with and
224        without profiling.  Then I'd use the following for the
225        normal build,
226
227              configure --prefix=~ --disable-optimise --enable-checking
228              make
229              make install
230
231        and for the profiling version, I specify a different
232        configuration.
233
234              configure --prefix=~ --enable-profiling --enable-config=optprof --enable-optimise --disable-checking
235              make configuration=optprof
236              make configuration=optprof install
237
238
239 INSTALLING
240        If you have done a successful make, then a simple
241
242                make install
243
244        should do the trick.
245
246        If you are doing an upgrade, please remember to remove
247        obsolete .pk and .tfm files of the fonts.  A script has
248        been provided to do the work, see bin/clean-fonts.sh.
249
250 CAVEATS
251        o    The -O2 option to gcc triggers a gcc bug on DEC Alpha
252             in dstream.cc. You should turn off this flag for this
253             file.
254
255        o    Perl5.003 and Perl5.004 use different syntax for
256             pod2html.
257
258
259
260
261
262 15/May/98                LilyPond 0.1.65                        4
263
264
265
266
267
268 INSTALL(1)            LilyPond documentation           INSTALL(1)
269
270
271 EXAMPLE
272        This is what I type in my xterm:
273
274                lilypond someinput.ly
275                tex someinput.tex
276                xdvi someinput&
277
278        This is what the output looks like over here:
279
280                GNU LilyPond 0.0.78 #4/FlowerLib 1.1.24 #0
281                Parsing ... [/home/hw/share/lilypond/init//
282                        <..etc..>
283                        init//performer.ly]]][input/kortjakje.ly]
284                Creating elements ...[8][16][24][25]
285                Preprocessing elements...
286                Calculating column positions ... [14][25]
287                Postprocessing elements...
288                TeX output to someinput.tex ...
289                Creating MIDI elements ...MIDI output to someinput.midi ...
290
291                hw:~/musix/spacer$ xdvi someinput&
292                [1] 855
293
294        Check out the input files, some of them have comments
295        Please refer to the man page for more information.
296
297 REDHAT LINUX
298        RedHat Linux users can compile an RPM. A spec file is in
299        make/out/lilypond.spec.  You should install a gif file
300        called lelie_icon.gif along with the sources.  You can
301        generate this gif file by typing
302
303             make gifs
304
305        in the directory Documentation.
306
307 DEBIAN GNU/LINUX
308        A Debian package is also available; contact Anthony Fok
309        <foka@debian.org>.  The build scripts are in the
310        subdirectory debian/
311
312 WINDOWS NT/95
313        So, you're stuck with Windows, eh?  Well, don't worry, you
314        just need (to get) Cygnus' windows32 port of gnu
315        development stuff; have a look at
316        http://www.cygnus.com/gnu-win32.
317
318        To make GNU LilyPond under, brr, aargh, shudder...
319        windows32, well, simply type:
320
321                bash configure
322                make
323
324        Note If you rely on broken DOS/Windows tools such as
325
326
327
328 15/May/98                LilyPond 0.1.65                        5
329
330
331
332
333
334 INSTALL(1)            LilyPond documentation           INSTALL(1)
335
336
337        pkzip/WinZIP to unpack the distribution, make sure the
338        entire source tree is unpacked correctly, in particular
339        the empty out directories (flower/out, lib/out et. al.)
340
341 AUTHORS
342        Han-Wen Nienhuys <hanwen@cs.ruu.nl>
343
344        Jan Nieuwenhuizen <jan@digicash.com>
345
346        Have fun!
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394 15/May/98                LilyPond 0.1.65                        6
395
396