]> git.donarmstrong.com Git - lilypond.git/blob - INSTALL.txt
release: 0.1.64
[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 13/May/98                LilyPond 0.1.64                        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 libgr-progs package).
88
89        o    Bib2html
90             (http://pertsserver.cs.uiuc.edu/~hull/bib2html.)
91             Which, in turn depends on Man2htlm
92             (http://askdonald.ask.uni-karlsruhe.de/
93             hppd/hpux/Networking/WWW/Man2html-1.05) for proper
94             installation (ugh).  TeTeX users, don't forget to
95             rerun texhash.
96
97 CONFIGURING and COMPILING
98        to install GNU LilyPond, simply type:
99
100                configure
101                make
102                make install
103
104        This will install the following files:
105
106                /usr/local/man/man1/mi2mu.1
107                /usr/local/man/man1/convert-mudela.1
108                /usr/local/man/man1/mudela-book.1
109                /usr/local/man/man1/lilypond.1
110                /usr/local/lib/libflower.{so,a}
111                /usr/local/bin/lilypond
112                /usr/local/bin/mi2mu
113                /usr/local/share/lilypond/*
114                /usr/lib/texmf/texmf/tex/lilypond/*
115
116        The TeX include directory is detected dynamically, but it
117        can be adjusted with --enable-tex-prefix and --enable-tex-
118        dir. The above assumes that you are root and have the GNU
119        development tools, and your make is GNU make.  If this is
120        not the case, you can adjust your environment variables to
121        your taste:
122
123                export CPPFLAGS="-I /home/me/my_include -DWEIRD_FOOBAR"
124                configure
125
126        CPPFLAGS are the preprocessor flags.
127
128
129
130 13/May/98                LilyPond 0.1.64                        2
131
132
133
134
135
136 INSTALL(1)            LilyPond documentation           INSTALL(1)
137
138
139        the configure script is Cygnus configure, and it will
140        accept --help. If you are not root, you will probably have
141        to make it with
142
143                configure --prefix=/home/me_myself_and_I/
144
145        In this case, you will have to set MFINPUTS, and TEXINPUTS
146        accordingly.
147
148        If you want to install GNU LilyPond in /usr/local, and
149        your TeX has no default hooks for local stuff (mine is
150        broken too), you can do:
151
152                configure --prefix=/usr/local --enable-tex-prefix=/usr/lib/texmf
153
154        Since GNU LilyPond currently is beta, you are advised to
155        also use
156
157                --enable-debugging
158                --enable-checking
159
160        other options include:
161
162        --enable-shared
163            Make a shared library (gnu/linux, solaris (?) only )
164
165        --enable-printing
166            Enable debugging print routines (lilypond -d option)
167
168        --enable-optimise
169            Set maximum optimisation: compile with -O2
170
171        --enable-profiling
172            Compile with support for profiling
173
174        --enable-tex-prefix
175            Set the directory where TeX and Metafont live
176
177        --enable-tex-dir
178            Set then directory TeX input is in (detected as a
179            subdir of tex-prefix).  This should be a directory
180            that is reachable both for tex and latex.  On my
181            system the best choice would be
182            /usr/lib/texmf/texmf/tex/generic//.
183
184        --enable-mf-dir
185            Set the directory mf input is in (idem).   On my
186            system the best choice would be
187            /usr/lib/texmf/texmf/fonts/source/public/.
188
189        --enable-config
190            Output to different configuration files.  Needed for
191            multi-platform builds
192
193
194
195
196 13/May/98                LilyPond 0.1.64                        3
197
198
199
200
201
202 INSTALL(1)            LilyPond documentation           INSTALL(1)
203
204
205        All options are documented in the configure help The
206        option --enable-optimise is recommended for Real Life
207        usage.
208
209        If you do
210
211                make all
212
213        everything will be compiled, but nothing will be
214        installed.  The resulting binaries can be found in the
215        subdirectories out/ (which contain all files generated
216        during compilation).
217
218 CONFIGURING FOR MULTIPLE PLATFORMS
219        If you want to compile LilyPond with different
220        configuration settings, then, you can use the --enable-
221        config option.  Example: suppose I want to build with and
222        without profiling.  Then I'd use the following for the
223        normal build,
224
225              configure --prefix=~ --disable-optimise --enable-checking
226              make
227              make install
228
229        and for the profiling version, I specify a different
230        configuration.
231
232              configure --prefix=~ --enable-profiling --enable-config=optprof --enable-optimise --disable-checking
233              make configuration=optprof
234              make configuration=optprof install
235
236
237 INSTALLING
238        If you have done a successful make, then a simple
239
240                make install
241
242        should do the trick.
243
244        If you are doing an upgrade, please remember to remove
245        obsolete .pk and .tfm files of the fonts.  A script has
246        been provided to do the work, see bin/clean-fonts.sh.
247
248 CAVEATS
249        o    The -O2 option to gcc triggers a gcc bug on DEC Alpha
250             in dstream.cc. You should turn off this flag for this
251             file.
252
253        o    Perl5.003 and Perl5.004 use different syntax for
254             pod2html.
255
256 EXAMPLE
257        This is what I type in my xterm:
258
259
260
261
262 13/May/98                LilyPond 0.1.64                        4
263
264
265
266
267
268 INSTALL(1)            LilyPond documentation           INSTALL(1)
269
270
271                lilypond someinput.ly
272                tex someinput.tex
273                xdvi someinput&
274
275        This is what the output looks like over here:
276
277                GNU LilyPond 0.0.78 #4/FlowerLib 1.1.24 #0
278                Parsing ... [/home/hw/share/lilypond/init//
279                        <..etc..>
280                        init//performer.ly]]][input/kortjakje.ly]
281                Creating elements ...[8][16][24][25]
282                Preprocessing elements...
283                Calculating column positions ... [14][25]
284                Postprocessing elements...
285                TeX output to someinput.tex ...
286                Creating MIDI elements ...MIDI output to someinput.midi ...
287
288                hw:~/musix/spacer$ xdvi someinput&
289                [1] 855
290
291        Check out the input files, some of them have comments
292        Please refer to the man page for more information.
293
294 REDHAT LINUX
295        RedHat Linux users can compile an RPM. A spec file is in
296        make/out/lilypond.spec.  You should install a gif file
297        called lelie_icon.gif along with the sources.  You can
298        generate this gif file by typing
299
300             make gifs
301
302        in the directory Documentation.
303
304 DEBIAN GNU/LINUX
305        A Debian package is also available; contact Anthony Fok
306        <foka@debian.org>.  The build scripts are in the
307        subdirectory debian/
308
309 WINDOWS NT/95
310        So, you're stuck with Windows, eh?  Well, don't worry, you
311        just need (to get) Cygnus' windows32 port of gnu
312        development stuff; have a look at
313        http://www.cygnus.com/gnu-win32.
314
315        To make GNU LilyPond under, brr, aargh, shudder...
316        windows32, well, simply type:
317
318                bash configure
319                make
320
321        Note If you rely on broken DOS/Windows tools such as
322        pkzip/WinZIP to unpack the distribution, make sure the
323        entire source tree is unpacked correctly, in particular
324        the empty out directories (flower/out, lib/out et. al.)
325
326
327
328 13/May/98                LilyPond 0.1.64                        5
329
330
331
332
333
334 INSTALL(1)            LilyPond documentation           INSTALL(1)
335
336
337 AUTHORS
338        Han-Wen Nienhuys <hanwen@cs.ruu.nl>
339
340        Jan Nieuwenhuizen <jan@digicash.com>
341
342        Have fun!
343
344
345
346
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 13/May/98                LilyPond 0.1.64                        6
395
396