]> git.donarmstrong.com Git - lilypond.git/blob - INSTALL.txt
release: 1.2.1
[lilypond.git] / INSTALL.txt
1
2        NSTALL - compiling and installing GNU LilyPond
3
4                          HWN & JCN
5
6 Contents
7
8      1: ABSTRACT
9 2: OBTAINING
10 3: PREREQUISITES
11 4: RUNNING
12 5: WEBSITE
13 6: CONFIGURING and COMPILING
14 7: CONFIGURING FOR MULTIPLE PLATFORMS
15 8: INSTALLING
16 9: REDHAT LINUX
17 10: DEBIAN GNU/LINUX
18 11: WINDOWS NT/95
19 12: BUGS
20 13: AUTHORS
21
22 1: ABSTRACT
23
24 This document explains what you need to install LilyPond,
25 and what you should do.  If you are going to compile and
26 install LilyPond often, e.g. when doing development, you
27 might want to check out the buildscripts/set-lily.sh script.
28 It sets some environment variables and symlinks, which comes
29 in handly when you have to compile LilyPond more often.
30
31 2: OBTAINING
32
33 You can get the latest version of LilyPond at
34 ftp://ftp.cs.uu.nl/pub/GNU/LilyPond/.  Refer to the links
35 document for mirror sites.
36
37 If you upgrade by patching do remember to rerun autoconf
38 after applying the patch.
39
40 3: PREREQUISITES
41
42 For compilation you need:
43
44 o    A GNU system: GNU LilyPond is known to run on these GNU
45      systems: Linux (PPC, intel), FreeBSD, AIX, NeXTStep,
46      IRIX, Digital Unix and Solaris.
47
48 o    Lots of disk space: LilyPond takes between 30 and 100
49      mb to compile if you use debugging information.  If you
50      are short on disk-space run configure with --disable-
51      debugging.
52
53      Although we recommend to use Unix, LilyPond is known to
54      run on Windows NT/95/98 as well.  See Section 11.
55
56 o    EGCS 1.1 or newer.
57
58 o    Python 1.5, Check out ftp://ftp.python.org or
59      ftp://ftp.cwi.nl/pub/python.
60
61 o    GUILE 1.3,  check out http://www.gnu.org/soft-
62      ware/guile/guile.html.
63
64 o    GNU make.  Check out ftp://ftp.gnu.org.
65
66 o    Flex (version 2.5.4 or newer).  Check out
67      ftp://ftp.gnu.org.
68
69 o    Bison (version 1.25 or newer).  Check out
70      ftp://ftp.gnu.org.
71
72 o    Yodl.  All documentation will be in Yodl. (1.31.15)
73      ftp://ftp.lilypond.org/pub/yodl. You need the latest
74      version of YODL, because the tutorial will trigger a
75      bug in earlier versions.
76
77 o    The geometry package for LaTeX is needed to use ly2dvi.
78      Available at ftp://ftp.ctan.org/tex-
79      archive/macros/latex/contrib/supported/geometry or at
80      mirror site ftp://ftp.dante.de
81
82 o    MetaPost, if you want to use direct PostScript output.
83      Please note  that  tetex-0.4pl8 (included with Redhat
84      5.x) does not include mfplain.mp, which is needed  for
85      producing the scaleable font files.
86
87 4: RUNNING
88
89 GNU LilyPond does use a lot of resources. For operation you
90 need the following software
91
92 o    TeX
93
94 o    A PostScript printer and/or viewer (such as
95      Ghostscript) is strongly recommended.  Xdvi will show
96      all embedded PostScript too if you have Ghostscript
97      installed.
98
99 o    GUILE 1.3, check out http://www.gnu.org/pro-
100      grams/guile.html
101
102 For running LilyPond successfully you have to help TeX and
103 MetaFont find various files.  The recommended way of doing
104 so is adjusting the environment variables in the start-up
105 scripts of your shell.  An example is given here for the
106 Bourne shell:
107
108      export MFINPUTS="/usr/local/share/lilypond/mf:"
109      export TEXINPUTS="/usr/local/share/lilypond/tex:/usr/local/share/lilypond/ps:"
110
111 The empty path component represents  and MetaFont's default
112 search paths.  Scripts with the proper paths for the bourne
113 and C-shell respectively are generated in build-
114 scripts/out/lilypond-profile and buildscripts/out/lilypond-
115 login during compilation.
116
117 LilyPond is a hiddeously big, slow and bloated program.  A
118 fast CPU and plenty of RAM is recommended for comfortable
119 use.
120
121 5: WEBSITE
122
123 The website is the most convenient form to use for reading
124 the documentation on-line documentation. It is made by
125 entering
126
127        make website
128
129 This does require a fully functioning
130
131 If you want to auto-generate Lily's website, you'll need
132 some additional conversion tools.
133
134 o    YODL 1.31.15 or later.
135
136 o    xpmtoppm (from the Portable Bitmap Utilities) (For Red-
137      Hat Linux users: it is included within the package
138      libgr-progs).  the original is at ftp://ftp.x.org/con-
139      trib/utilities/netpbm-1mar1994.p1.tar.gz
140
141 o    pnmtopng, which is also in libgr-progs for RedHat. The
142      original is at
143      ftp://swrinde.nde.swri.edu/pub/png/applications/pnm-
144      topng-2.37.2.tar.gz.i
145
146      The version of pnmtopng that is distributed with RedHat
147      5.1 and 5.2 contains a bug: pnmtopng is dynamically
148      linked to the wrong version of libpng, which results in
149
150      cropped images.  Recompile it from source, and make
151      sure that the pnmtopng binary is linked statically to
152      the libpng that is included in libgr.  RedHat 6.0 does
153      not have this problem.
154
155            tar xzf libgr-2.0.13.tar.gz
156                 make
157                 cd png
158                 rm libpng.so*
159                 make pnmtopng
160
161      You can then install the new pnmtopng into
162      /usr/local/bin/
163
164 o    Bib2html http://pertsserver.cs.uiuc.edu/~hull/bib2html.
165      Which, in turn depends on man2html for proper installa-
166      tion.  man2html can be had from http://askdon-
167      ald.ask.uni-karlsruhe.de/hppd/hpux/Network-
168      ing/WWW/Man2html-1.05.
169
170      The website will build without this utility, but you
171      will not see our hypertextified bibliography.
172
173 o    Doc++ (optional) to read the source code.
174
175 You also have to install buildscripts/out/ps-to-gifs in a
176 directory that is in the path.
177
178 6: CONFIGURING and COMPILING
179
180 to install GNU LilyPond, simply type:
181
182           gunzip -c lilypond-x.y.z | tar xf -
183           cd lilypond-x.y.z
184           ./configure         # fill in your standard prefix with --prefix
185           make
186           make install
187
188 This will install a number of files, something close to:
189
190           /usr/local/man/man1/mi2mu.1
191           /usr/local/man/man1/convert-mudela.1
192           /usr/local/man/man1/mudela-book.1
193           /usr/local/man/man1/lilypond.1
194           /usr/local/bin/lilypond
195           /usr/local/bin/mi2mu
196           /usr/local/share/lilypond/*
197           /usr/local/share/locale/{it,nl}/LC_MESSAGES/lilypond.mo
198
199 The above assumes that you are root and have the GNU devel-
200 opment tools, and your make is GNU make.  If this is not the
201 case, you can adjust your environment variables to your
202 taste:
203
204           export CPPFLAGS="-I /home/me/my_include -DWEIRD_FOOBAR"
205           ./configure
206
207 CPPFLAGS are the preprocessor flags.
208
209 The configure script is Cygnus configure, and it will accept
210 --help. If you are not root, you will probably have to make
211 it with a different --prefix option.  Our favourite location
212 is
213
214           ./configure --prefix=$HOME/usr
215
216 In this case, you will have to set up MFINPUTS, and TEXIN-
217 PUTS accordingly.
218
219 Since GNU LilyPond currently is beta, you are advised to
220 also use
221
222           --enable-debugging
223           --enable-checking
224
225 Options to configure include:
226
227 --enable-printing
228      Enable debugging print routines (lilypond -D option)
229
230 --enable-optimise
231      Set maximum optimisation: compile with -O2.  This can
232      be unreliable on some compiler/platform combinations
233      (eg, DEC Alpha and PPC)
234
235 --enable-profiling
236      Compile with support for profiling.
237
238 --enable-config
239      Output to a different configuration file.  Needed for
240      multi-platform builds
241
242 All options are documented in the configure help The option
243 --enable-optimise is recommended for Real Life usage.
244
245 If you do
246
247           make all
248
249 everything will be compiled, but nothing will be installed.
250 The resulting binaries can be found in the subdirectories
251 out/ (which contain all files generated during compilation).
252
253 7: CONFIGURING FOR MULTIPLE PLATFORMS
254
255 If you want to compile LilyPond with different configuration
256 settings, then, you can use the --enable-config option.
257 Example: suppose I want to build with and   without profil-
258 ing.  Then I'd use the following for the normal build,
259
260            ./configure --prefix=~ --disable-optimise --enable-checking
261            make
262            make install
263
264 and for the profiling version, I specify a different config-
265 uration.
266
267            ./configure --prefix=~ --enable-profiling --enable-config=optprof --enable-optimise --disable-checking
268            make config=optprof
269            make config=optprof install
270
271 8: INSTALLING
272
273 If you have done a successful make, then a simple
274
275           make install
276
277 should do the trick.
278
279 If you are doing an upgrade, please remember to remove obso-
280 lete .pk and .tfm files of the fonts.  A script has been
281 provided to do the work for you, see bin/clean-fonts.sh.
282
283 CAVEATS
284
285 o    The -O2 option  triggers  bugs on various platforms
286      (PowerPC, Alpha).  If you experience problems, you
287      should first try  turning off this.
288
289 o    On PPC you need at least EGCS-1.1.2f.
290
291 9: REDHAT LINUX
292
293 RedHat Linux users can compile an RPM. A spec file is in
294 make/out/lilypond.spec, it is distributed along with the
295 sources.
296
297 You can make the rpm by issuing
298
299           rpm -tb lilypond-x.y.z.tar.gz
300           rpm -i /usr/src/redhat/RPMS/i386/lilypond-x.y.z
301
302 Precompiled i386 RedHat RPMS are available from ftp://fresh-
303 meat.net/pub/rpms/lilypond/ and http://linux.umbc.edu/soft-
304 ware/lilypond/rpms/.
305
306 10: DEBIAN GNU/LINUX
307
308 A Debian package is also available; contact Anthony Fok
309 foka@debian.org.  The build scripts are in the subdirectory
310
311 debian/.
312
313 11: WINDOWS NT/95
314
315 Separate instructions on building for W32 are avaible in the
316 file README-W32.yo.
317
318 12: BUGS
319
320 Send bug reports to bug-gnu-music@gnu.org.  For help and
321 questions use help-gnu-music@gnu.org and gnu-music-dis-
322 cuss@gnu.org.  Please consult the faq before mailing your
323 problems.
324
325 13: AUTHORS
326
327 Han-Wen Nienhuys <hanwen@cs.uu.nl>
328
329 Jan Nieuwenhuizen <janneke@gnu.org>
330
331 In case of problems, please use the mailing list for help.
332
333 Have fun!