3 INSTALL - installing GNU LilyPond
7 This page documents installation and compilation of GNU LilyPond
11 You do something which looks remotely like
16 tar -C /usr/lib/texmf/fonts/source/ -zxf musixtex-T73.tgz 'mf/*'
18 The detailed instructions follow here.
22 For compilation you need.
28 A Unix system with GNU tools. GNU LilyPond is known to run on these
29 unices: Linux, AIX, Digital Unix and Solaris.
31 If you have the Cygnus WINDOWS32 port of the GNU utils, it will even
32 work in Windows NT/95, but we don't promise to support it.
36 GNU C++ v2.7 or better, with libg++ installed. Version 2.7.2
37 or better recommended.
45 Flex (2.5.1 or better).
49 Bison. (Version 1.25 or better)
55 GNU LilyPond does use a lot of resources. For operation you need the following:
66 The MusixTeX fonts (I included those found in MusixTeX T.73). Beware,
67 the clef symbol seems to have changed its position in some versions,
68 (notably Egler's, a.k.a. OpusTeX). The MusixTeX fonts are included in
69 MusixTeX (T73 or better), which can be had from any CTAN site, e.g. at
73 =item ftp://ftp.shsu.edu/tex-archive/macros/musixtex/taupin
75 =item ftp://ftp.tex.ac.uk/tex-archive/macros/musixtex/taupin
77 =item ftp://ftp.dante.de/tex-archive/macros/musixtex/taupin
81 You only need the contents of the F<mf/> subdirectory of the
82 package. The primary site of the Taupin version is
83 ftp://hprib.lps.u-psud.fr/pub/music_zips/musixtex.zip
85 Andreas Egler's version of MusixTeX, now called OpusTeX, will also
86 work. Andreas moved some characters around in the fonts, so you have
87 to edit the definitions in tex/eglerdefs.tex (patch appreciated)
92 Although not strictly necessary, these are recommended to have.
98 Perl. Most scripts are written in Perl. Most documentation was created
99 with the perl's Plain Old Documentation.
107 A fast computer (a full page of music typically takes 1 minute
108 on my 486/133, using the B<--enable-checking> compile. It's lot slower
109 than most MusiXTeX preprocessors)
114 =head1 CONFIGURING and COMPILING
116 to install GNU LilyPond, simply type:
121 This will install the following files:
123 /usr/local/man/man1/mi2mu.1
124 /usr/local/man/man1/convert-mudela.1
125 /usr/local/man/man1/mudela-book.1
126 /usr/local/man/man1/lilypond.1
127 /usr/local/lib/libflower.{so,a}
128 /usr/local/bin/lilypond
130 /usr/local/share/lilypond/*
131 /usr/lib/texmf/texmf/tex/lilypond/*
133 The TeX include directory is detected dynamically, but it can be
134 adjusted with B<--enable-tex-prefix> and B<--enable-tex-dir>. The
135 above assumes that you are root and have the GNU development tools,
136 and your make is GNU make. If this is not the case, you can adjust
137 your environment variables to your taste:
139 export CPPFLAGS="-I /home/me/my_include -DWEIRD_FOOBAR"
142 C<CPPFLAGS> are the preprocessor flags.
144 the configure script is Cygnus configure, and it will accept
145 B<--help>. If you are not root, you will probably have to make it with
147 configure --prefix=/home/me_myself_and_I/
149 In this case, you will have to set MFINPUTS, and TEXINPUTS accordingly.
151 If you want to install GNU LilyPond in F</usr/local>, and your TeX has
152 no default hooks for local stuff (mine is broken too), you can do:
154 configure --prefix=/usr/local --enable-tex-prefix=/usr/lib/texmf
156 Since GNU LilyPond currently is beta, you are advised to also use
161 other options include:
165 =item --enable-shared
167 Make a shared library (gnu/linux, solaris (?) only )
169 =item --enable-printing
171 Enable debugging print routines (lilypond B<-d> option)
173 =item --enable-optimise
175 Set maximum optimisation: compile with B<-O2>
177 =item --enable-profiling
179 Compile with support for profiling
181 =item --enable-tex-prefix
183 Set the directory where TeX and Metafont live
185 =item --enable-tex-dir
187 Set then directory TeX input is in (detected as a subdir of tex-prefix)
189 =item --enable-mf-dir
191 Set then directory mf input is in (idem) [obsolete]
195 All options are documented in the F<configure> help
196 The option B<--enable-optimise> is recommended for Real Life usage.
202 everything will be compiled, but nothing will be installed. The
203 resulting binaries can be found in the subdirectories F<out/> (which
204 contain all files generated during compilation).
209 If you have done a successful C<make>, then a simple
215 Install the musixtex fonts in a directory which TeX and MF knows (if
216 you are root, look for a directory which contains the directories with
217 AMS and CM source (*.mf) files. Create a subdir lilypond or musixtex
218 and copy the fonts into that). Do not forget to rehash TeX (if
221 Example: my fonts are in F</usr/local/lib/texfonts/musixtex/>, and I
222 have a symlink pointing to that in
223 F</usr/lib/texmf/texmf/fonts/source/public/>. After I copied the
224 files, I ran "texhash"
232 The -O2 option to gcc triggers a gcc bug on DEC Alpha in dstream.cc. You
233 should turn off this flag for this file.
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 lelie.tex ...
256 Creating MIDI elements ...MIDI output to lelie.midi ...
259 hw:~/musix/spacer$ xdvi lelie&
262 Check out the input files, some of them have comments
263 Please refer to the man page for more information.
267 RedHat Linux users should be able to get a RPM. A spec file is in
268 F<make/out/lilypond.spec>. You should be able to create an rpm as a normal
269 user. Be sure you have a ~/.rpmrc, and edit the RPM-dir in
270 F<Variables.make>. (If you create the RPM as a normal user the
271 permissions will not be set correctly, unfortunately)
278 you need the cygnus windows32 gnu port development stuff; have a look
279 at http://www.cygnus.com/gnu-win32.
281 to make GNU LilyPond under, brr, aargh, shudder.. windows32, well,
289 Han-Wen Nienhuys <hanwen@stack.nl>
291 Jan Nieuwenhuizen <jan@digicash.com>