4 INSTALL(1) LilyPond documentation INSTALL(1)
8 INSTALL - installing GNU LilyPond
11 This page documents installation and compilation of GNU
15 You do something which looks remotely like
21 The detailed instructions follow here.
24 For compilation you need.
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.
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.
34 o GNU C++ version 2.7 or newer (yes, 2.8 is fine).
39 GNU LilyPond does use a lot of resources. For operation
40 you need the following:
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
50 Although not strictly necessary, these are recommended to
55 o Flex (version 2.5.4 or newer).
57 o Bison (version 1.25 or newer).
59 o Perl-5. Most documentation was created with the
60 perl's Plain Old Documentation. (I use 5.003)
64 25/Apr/98 LilyPond 0.1.59 1
70 INSTALL(1) LilyPond documentation INSTALL(1)
73 o Python. Although perl is nice, python is better. We
74 will shift towards python for build scripts
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
83 CONFIGURING and COMPILING
84 to install GNU LilyPond, simply type:
90 This will install the following files:
92 /usr/local/man/man1/mi2mu.1
93 /usr/local/man/man1/convert-mudela.1
94 /usr/local/man/man1/mudela-book.1
95 /usr/local/man/man1/lilypond.1
96 /usr/local/lib/libflower.{so,a}
97 /usr/local/bin/lilypond
99 /usr/local/share/lilypond/*
100 /usr/lib/texmf/texmf/tex/lilypond/*
102 The TeX include directory is detected dynamically, but it
103 can be adjusted with --enable-tex-prefix and --enable-tex-
104 dir. The above assumes that you are root and have the GNU
105 development tools, and your make is GNU make. If this is
106 not the case, you can adjust your environment variables to
109 export CPPFLAGS="-I /home/me/my_include -DWEIRD_FOOBAR"
112 CPPFLAGS are the preprocessor flags.
114 the configure script is Cygnus configure, and it will
115 accept --help. If you are not root, you will probably have
118 configure --prefix=/home/me_myself_and_I/
120 In this case, you will have to set MFINPUTS, and TEXINPUTS
123 If you want to install GNU LilyPond in /usr/local, and
124 your TeX has no default hooks for local stuff (mine is
125 broken too), you can do:
130 25/Apr/98 LilyPond 0.1.59 2
136 INSTALL(1) LilyPond documentation INSTALL(1)
139 configure --prefix=/usr/local --enable-tex-prefix=/usr/lib/texmf
141 Since GNU LilyPond currently is beta, you are advised to
147 other options include:
150 Make a shared library (gnu/linux, solaris (?) only )
153 Enable debugging print routines (lilypond -d option)
156 Set maximum optimisation: compile with -O2
159 Compile with support for profiling
162 Set the directory where TeX and Metafont live
165 Set then directory TeX input is in (detected as a
166 subdir of tex-prefix)
169 Set the directory mf input is in (idem)
172 Output to different configuration files. Needed for
173 multi-platform builds
175 All options are documented in the configure help The
176 option --enable-optimise is recommended for Real Life
183 everything will be compiled, but nothing will be
184 installed. The resulting binaries can be found in the
185 subdirectories out/ (which contain all files generated
188 CONFIGURING FOR MULTIPLE PLATFORMS
189 If you want to compile LilyPond with different
190 configuration settings, then, you can use the --enable-
191 config option. Example: suppose I want to build with and
192 without profiling. Then I'd use the following for the
196 25/Apr/98 LilyPond 0.1.59 3
202 INSTALL(1) LilyPond documentation INSTALL(1)
207 configure --prefix=~ --disable-optimise --enable-checking
211 and for the profiling version, I specify a different
214 configure --prefix=~ --enable-profiling --enable-config=optprof --enable-optimise --disable-checking
215 make configuration=optprof
216 make configuration=optprof install
220 If you have done a successful make, then a simple
226 If you are doing an upgrade, please remember to remove
227 obsolete .pk and .tfm files of the fonts. A script has
228 been provided to do the work, see bin/clean-fonts.sh.
231 o The -O2 option to gcc triggers a gcc bug on DEC Alpha
232 in dstream.cc. You should turn off this flag for this
235 o Perl5.003 and Perl5.004 use different syntax for
239 This is what I type in my xterm:
241 lilypond someinput.ly
245 This is what the output looks like over here:
247 GNU LilyPond 0.0.78 #4/FlowerLib 1.1.24 #0
248 Parsing ... [/home/hw/share/lilypond/init//
250 init//performer.ly]]][input/kortjakje.ly]
251 Creating elements ...[8][16][24][25]
252 Preprocessing elements...
253 Calculating column positions ... [14][25]
254 Postprocessing elements...
255 TeX output to someinput.tex ...
256 Creating MIDI elements ...MIDI output to someinput.midi ...
262 25/Apr/98 LilyPond 0.1.59 4
268 INSTALL(1) LilyPond documentation INSTALL(1)
271 hw:~/musix/spacer$ xdvi someinput&
274 Check out the input files, some of them have comments
275 Please refer to the man page for more information.
278 RedHat Linux users should be able to get a RPM. A spec
279 file is in make/out/lilypond.spec. You should be able to
280 create an rpm as a normal user. Be sure you have a
281 ~/.rpmrc, and edit the RPM-dir in Variables.make. (If you
282 create the RPM as a normal user the permissions will not
283 be set correctly, unfortunately)
286 A Debian package is also available; contact Anthony Fok
287 <foka@debian.org>. The build scripts are in the
291 So, you're stuck with Windows, eh? Well, don't worry, you
292 just need (to get) Cygnus' windows32 port of gnu
293 development stuff; have a look at
294 http://www.cygnus.com/gnu-win32.
296 To make GNU LilyPond under, brr, aargh, shudder...
297 windows32, well, simply type:
302 Note If you rely on broken DOS/Windows tools such as
303 pkzip/WinZIP to unpack the distribution, make sure the
304 entire source tree is unpacked correctly, in particular
305 the empty out directories (flower/out, lib/out et. al.)
308 Han-Wen Nienhuys <hanwen@cs.ruu.nl>
310 Jan Nieuwenhuizen <jan@digicash.com>
328 25/Apr/98 LilyPond 0.1.59 5