4 INSTALL(1) LilyPond documentation INSTALL(1)
7 N
\bN
\bN
\bNA
\bA
\bA
\bAM
\bM
\bM
\bME
\bE
\bE
\bE
8 INSTALL - installing GNU LilyPond
10 D
\bD
\bD
\bDE
\bE
\bE
\bES
\bS
\bS
\bSC
\bC
\bC
\bCR
\bR
\bR
\bRI
\bI
\bI
\bIP
\bP
\bP
\bPT
\bT
\bT
\bTI
\bI
\bI
\bIO
\bO
\bO
\bON
\bN
\bN
\bN
11 This page documents installation and compilation of GNU
14 A
\bA
\bA
\bAB
\bB
\bB
\bBS
\bS
\bS
\bST
\bT
\bT
\bTR
\bR
\bR
\bRA
\bA
\bA
\bAC
\bC
\bC
\bCT
\bT
\bT
\bT
15 You do something which looks remotely like
21 The detailed instructions follow here.
23 P
\bP
\bP
\bPR
\bR
\bR
\bRE
\bE
\bE
\bER
\bR
\bR
\bRE
\bE
\bE
\bEQ
\bQ
\bQ
\bQU
\bU
\bU
\bUI
\bI
\bI
\bIS
\bS
\bS
\bSI
\bI
\bI
\bIT
\bT
\bT
\bTE
\bE
\bE
\bES
\bS
\bS
\bS
24 For compilation you need.
26 +
\bo A GNU system: GNU LilyPond is known to run on these
27 GNU systems: Linux, FreeBSD, AIX, Digital Unix and
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 +
\bo GNU C++ v2.7 or better, with libg++ installed.
35 Version 2.7.2 or better recommended.
39 +
\bo Flex (2.5.1 or better).
41 +
\bo Bison. (Version 1.25 or better)
43 R
\bR
\bR
\bRU
\bU
\bU
\bUN
\bN
\bN
\bNN
\bN
\bN
\bNI
\bI
\bI
\bIN
\bN
\bN
\bNG
\bG
\bG
\bG
44 GNU LilyPond does use a lot of resources. For operation
45 you need the following:
49 +
\bo A PostScript printer and/or viewer (such as
50 Ghostscript) is strongly recommended. Xdvi will show
51 all embedded PostScript too if you have Ghostscript
54 R
\bR
\bR
\bRE
\bE
\bE
\bEC
\bC
\bC
\bCO
\bO
\bO
\bOM
\bM
\bM
\bMM
\bM
\bM
\bME
\bE
\bE
\bEN
\bN
\bN
\bND
\bD
\bD
\bDE
\bE
\bE
\bED
\bD
\bD
\bD
55 Although not strictly necessary, these are recommended to
58 +
\bo Perl-5. Most documentation was created with the
59 perl's Plain Old Documentation. (I use 5.003)
64 11/Jan/98 LilyPond 0.1.41 1
70 INSTALL(1) LilyPond documentation INSTALL(1)
73 +
\bo Python. Although perl is nice, python is better. We
74 will shift towards python for build scripts
78 +
\bo A fast computer (a full page of music typically takes
79 1 minute on my 486/133, using the -
\b-
\b-
\b--
\b-
\b-
\b-e
\be
\be
\ben
\bn
\bn
\bna
\ba
\ba
\bab
\bb
\bb
\bbl
\bl
\bl
\ble
\be
\be
\be-
\b-
\b-
\b-c
\bc
\bc
\bch
\bh
\bh
\bhe
\be
\be
\bec
\bc
\bc
\bck
\bk
\bk
\bki
\bi
\bi
\bin
\bn
\bn
\bng
\bg
\bg
\bg
80 compile. It's lot slower than most MusiXTeX
83 C
\bC
\bC
\bCO
\bO
\bO
\bON
\bN
\bN
\bNF
\bF
\bF
\bFI
\bI
\bI
\bIG
\bG
\bG
\bGU
\bU
\bU
\bUR
\bR
\bR
\bRI
\bI
\bI
\bIN
\bN
\bN
\bNG
\bG
\bG
\bG a
\ba
\ba
\ban
\bn
\bn
\bnd
\bd
\bd
\bd C
\bC
\bC
\bCO
\bO
\bO
\bOM
\bM
\bM
\bMP
\bP
\bP
\bPI
\bI
\bI
\bIL
\bL
\bL
\bLI
\bI
\bI
\bIN
\bN
\bN
\bNG
\bG
\bG
\bG
84 to install GNU LilyPond, simply type:
89 This will install the following files:
91 /usr/local/man/man1/mi2mu.1
92 /usr/local/man/man1/convert-mudela.1
93 /usr/local/man/man1/mudela-book.1
94 /usr/local/man/man1/lilypond.1
95 /usr/local/lib/libflower.{so,a}
96 /usr/local/bin/lilypond
98 /usr/local/share/lilypond/*
99 /usr/lib/texmf/texmf/tex/lilypond/*
101 The TeX include directory is detected dynamically, but it
102 can be adjusted with -
\b-
\b-
\b--
\b-
\b-
\b-e
\be
\be
\ben
\bn
\bn
\bna
\ba
\ba
\bab
\bb
\bb
\bbl
\bl
\bl
\ble
\be
\be
\be-
\b-
\b-
\b-t
\bt
\bt
\bte
\be
\be
\bex
\bx
\bx
\bx-
\b-
\b-
\b-p
\bp
\bp
\bpr
\br
\br
\bre
\be
\be
\bef
\bf
\bf
\bfi
\bi
\bi
\bix
\bx
\bx
\bx and -
\b-
\b-
\b--
\b-
\b-
\b-e
\be
\be
\ben
\bn
\bn
\bna
\ba
\ba
\bab
\bb
\bb
\bbl
\bl
\bl
\ble
\be
\be
\be-
\b-
\b-
\b-t
\bt
\bt
\bte
\be
\be
\bex
\bx
\bx
\bx-
\b-
\b-
\b-
103 d
\bd
\bd
\bdi
\bi
\bi
\bir
\br
\br
\br. The above assumes that you are root and have the GNU
104 development tools, and your make is GNU make. If this is
105 not the case, you can adjust your environment variables to
108 export CPPFLAGS="-I /home/me/my_include -DWEIRD_FOOBAR"
111 CPPFLAGS are the preprocessor flags.
113 the configure script is Cygnus configure, and it will
114 accept -
\b-
\b-
\b--
\b-
\b-
\b-h
\bh
\bh
\bhe
\be
\be
\bel
\bl
\bl
\blp
\bp
\bp
\bp. If you are not root, you will probably have
117 configure --prefix=/home/me_myself_and_I/
119 In this case, you will have to set MFINPUTS, and TEXINPUTS
122 If you want to install GNU LilyPond in _
\b/_
\bu_
\bs_
\br_
\b/_
\bl_
\bo_
\bc_
\ba_
\bl, and
123 your TeX has no default hooks for local stuff (mine is
124 broken too), you can do:
126 configure --prefix=/usr/local --enable-tex-prefix=/usr/lib/texmf
130 11/Jan/98 LilyPond 0.1.41 2
136 INSTALL(1) LilyPond documentation INSTALL(1)
139 Since GNU LilyPond currently is beta, you are advised to
145 other options include:
147 -
\b-
\b-
\b--
\b-
\b-
\b-e
\be
\be
\ben
\bn
\bn
\bna
\ba
\ba
\bab
\bb
\bb
\bbl
\bl
\bl
\ble
\be
\be
\be-
\b-
\b-
\b-s
\bs
\bs
\bsh
\bh
\bh
\bha
\ba
\ba
\bar
\br
\br
\bre
\be
\be
\bed
\bd
\bd
\bd
148 Make a shared library (gnu/linux, solaris (?) only )
150 -
\b-
\b-
\b--
\b-
\b-
\b-e
\be
\be
\ben
\bn
\bn
\bna
\ba
\ba
\bab
\bb
\bb
\bbl
\bl
\bl
\ble
\be
\be
\be-
\b-
\b-
\b-p
\bp
\bp
\bpr
\br
\br
\bri
\bi
\bi
\bin
\bn
\bn
\bnt
\bt
\bt
\bti
\bi
\bi
\bin
\bn
\bn
\bng
\bg
\bg
\bg
151 Enable debugging print routines (lilypond -
\b-
\b-
\b-d
\bd
\bd
\bd option)
153 -
\b-
\b-
\b--
\b-
\b-
\b-e
\be
\be
\ben
\bn
\bn
\bna
\ba
\ba
\bab
\bb
\bb
\bbl
\bl
\bl
\ble
\be
\be
\be-
\b-
\b-
\b-o
\bo
\bo
\bop
\bp
\bp
\bpt
\bt
\bt
\bti
\bi
\bi
\bim
\bm
\bm
\bmi
\bi
\bi
\bis
\bs
\bs
\bse
\be
\be
\be
154 Set maximum optimisation: compile with -
\b-
\b-
\b-O
\bO
\bO
\bO2
\b2
\b2
\b2
156 -
\b-
\b-
\b--
\b-
\b-
\b-e
\be
\be
\ben
\bn
\bn
\bna
\ba
\ba
\bab
\bb
\bb
\bbl
\bl
\bl
\ble
\be
\be
\be-
\b-
\b-
\b-p
\bp
\bp
\bpr
\br
\br
\bro
\bo
\bo
\bof
\bf
\bf
\bfi
\bi
\bi
\bil
\bl
\bl
\bli
\bi
\bi
\bin
\bn
\bn
\bng
\bg
\bg
\bg
157 Compile with support for profiling
159 -
\b-
\b-
\b--
\b-
\b-
\b-e
\be
\be
\ben
\bn
\bn
\bna
\ba
\ba
\bab
\bb
\bb
\bbl
\bl
\bl
\ble
\be
\be
\be-
\b-
\b-
\b-t
\bt
\bt
\bte
\be
\be
\bex
\bx
\bx
\bx-
\b-
\b-
\b-p
\bp
\bp
\bpr
\br
\br
\bre
\be
\be
\bef
\bf
\bf
\bfi
\bi
\bi
\bix
\bx
\bx
\bx
160 Set the directory where TeX and Metafont live
162 -
\b-
\b-
\b--
\b-
\b-
\b-e
\be
\be
\ben
\bn
\bn
\bna
\ba
\ba
\bab
\bb
\bb
\bbl
\bl
\bl
\ble
\be
\be
\be-
\b-
\b-
\b-t
\bt
\bt
\bte
\be
\be
\bex
\bx
\bx
\bx-
\b-
\b-
\b-d
\bd
\bd
\bdi
\bi
\bi
\bir
\br
\br
\br
163 Set then directory TeX input is in (detected as a
164 subdir of tex-prefix)
166 -
\b-
\b-
\b--
\b-
\b-
\b-e
\be
\be
\ben
\bn
\bn
\bna
\ba
\ba
\bab
\bb
\bb
\bbl
\bl
\bl
\ble
\be
\be
\be-
\b-
\b-
\b-m
\bm
\bm
\bmf
\bf
\bf
\bf-
\b-
\b-
\b-d
\bd
\bd
\bdi
\bi
\bi
\bir
\br
\br
\br
167 Set the directory mf input is in (idem)
169 -
\b-
\b-
\b--
\b-
\b-
\b-e
\be
\be
\ben
\bn
\bn
\bna
\ba
\ba
\bab
\bb
\bb
\bbl
\bl
\bl
\ble
\be
\be
\be-
\b-
\b-
\b-o
\bo
\bo
\bou
\bu
\bu
\but
\bt
\bt
\bt-
\b-
\b-
\b-d
\bd
\bd
\bdi
\bi
\bi
\bir
\br
\br
\br
170 Set the directory for machine generated output.
172 All options are documented in the _
\bc_
\bo_
\bn_
\bf_
\bi_
\bg_
\bu_
\br_
\be help The
173 option -
\b-
\b-
\b--
\b-
\b-
\b-e
\be
\be
\ben
\bn
\bn
\bna
\ba
\ba
\bab
\bb
\bb
\bbl
\bl
\bl
\ble
\be
\be
\be-
\b-
\b-
\b-o
\bo
\bo
\bop
\bp
\bp
\bpt
\bt
\bt
\bti
\bi
\bi
\bim
\bm
\bm
\bmi
\bi
\bi
\bis
\bs
\bs
\bse
\be
\be
\be is recommended for Real Life
180 everything will be compiled, but nothing will be
181 installed. The resulting binaries can be found in the
182 subdirectories _
\bo_
\bu_
\bt_
\b/ (which contain all files generated
185 B
\bB
\bB
\bBu
\bu
\bu
\bui
\bi
\bi
\bil
\bl
\bl
\bld
\bd
\bd
\bdi
\bi
\bi
\bin
\bn
\bn
\bng
\bg
\bg
\bg f
\bf
\bf
\bfo
\bo
\bo
\bor
\br
\br
\br m
\bm
\bm
\bmu
\bu
\bu
\bul
\bl
\bl
\blt
\bt
\bt
\bti
\bi
\bi
\bip
\bp
\bp
\bpl
\bl
\bl
\ble
\be
\be
\be h
\bh
\bh
\bho
\bo
\bo
\bos
\bs
\bs
\bst
\bt
\bt
\bts
\bs
\bs
\bs
187 LilyPond does not follow the GNU standards when it comes
188 to configuring and making Makefiles. In LilyPond, _
\bm_
\ba_
\bk_
\be
189 generates _
\ba_
\bl_
\bl output in output directories (called _
\bo_
\bu_
\bt_
\b/,
190 by default). You can have multiple compiles from the same
191 source-tree, by overriding the setting for the output
196 11/Jan/98 LilyPond 0.1.41 3
202 INSTALL(1) LilyPond documentation INSTALL(1)
205 Example: on my system, I do debugging and lots compiling.
206 For this I use the configuration as follows:
208 configure --prefix=~ --enable-debugging --enable-printing --enable-checking
211 and I want to do profiling. For that I use
213 configure --prefix=~ --enable-debugging --disable-printing\
214 --disable-checking --enable-profiling --enable-optimise\
215 --enable-out-dir=out-profile
217 make OUTDIR_NAME=out-profile all
219 These two commands build two entirely separate versions of
220 LilyPond. In Real Life, you would probably also want to
221 have two different prefixes. On my machine this is no
222 problem; I never do make install. My prefix dirs are
223 linked back to my source directory.
225 I
\bI
\bI
\bIN
\bN
\bN
\bNS
\bS
\bS
\bST
\bT
\bT
\bTA
\bA
\bA
\bAL
\bL
\bL
\bLL
\bL
\bL
\bLI
\bI
\bI
\bIN
\bN
\bN
\bNG
\bG
\bG
\bG
226 If you have done a successful make, then a simple
232 If you are doing an upgrade, please remember to remove
233 obsolete .pk and .tfm files of the fonts. A script has
234 been provided to do the work, see _
\bb_
\bi_
\bn_
\b/_
\bc_
\bl_
\be_
\ba_
\bn_
\b-_
\bf_
\bo_
\bn_
\bt_
\bs_
\b._
\bs_
\bh.
236 C
\bC
\bC
\bCA
\bA
\bA
\bAV
\bV
\bV
\bVE
\bE
\bE
\bEA
\bA
\bA
\bAT
\bT
\bT
\bTS
\bS
\bS
\bS
237 +
\bo The -O2 option to gcc triggers a gcc bug on DEC Alpha
238 in dstream.cc. You should turn off this flag for this
241 +
\bo Perl5.003 and Perl5.004 use different syntax for
244 E
\bE
\bE
\bEX
\bX
\bX
\bXA
\bA
\bA
\bAM
\bM
\bM
\bMP
\bP
\bP
\bPL
\bL
\bL
\bLE
\bE
\bE
\bE
245 This is what I type in my xterm:
247 lilypond someinput.ly
251 This is what the output looks like over here:
262 11/Jan/98 LilyPond 0.1.41 4
268 INSTALL(1) LilyPond documentation INSTALL(1)
271 GNU LilyPond 0.0.78 #4/FlowerLib 1.1.24 #0
272 Parsing ... [/home/hw/share/lilypond/init//
274 init//performer.ly]]][input/kortjakje.ly]
275 Creating elements ...[8][16][24][25]
276 Preprocessing elements...
277 Calculating column positions ... [14][25]
278 Postprocessing elements...
279 TeX output to someinput.tex ...
280 Creating MIDI elements ...MIDI output to someinput.midi ...
282 hw:~/musix/spacer$ xdvi someinput&
285 Check out the input files, some of them have comments
286 Please refer to the man page for more information.
288 R
\bR
\bR
\bRE
\bE
\bE
\bED
\bD
\bD
\bDH
\bH
\bH
\bHA
\bA
\bA
\bAT
\bT
\bT
\bT L
\bL
\bL
\bLI
\bI
\bI
\bIN
\bN
\bN
\bNU
\bU
\bU
\bUX
\bX
\bX
\bX
289 RedHat Linux users should be able to get a RPM. A spec
290 file is in _
\bm_
\ba_
\bk_
\be_
\b/_
\bo_
\bu_
\bt_
\b/_
\bl_
\bi_
\bl_
\by_
\bp_
\bo_
\bn_
\bd_
\b._
\bs_
\bp_
\be_
\bc. You should be able to
291 create an rpm as a normal user. Be sure you have a
292 _
\b~_
\b/_
\b._
\br_
\bp_
\bm_
\br_
\bc, and edit the RPM-dir in _
\bV_
\ba_
\br_
\bi_
\ba_
\bb_
\bl_
\be_
\bs_
\b._
\bm_
\ba_
\bk_
\be. (If you
293 create the RPM as a normal user the permissions will not
294 be set correctly, unfortunately)
296 D
\bD
\bD
\bDE
\bE
\bE
\bEB
\bB
\bB
\bBI
\bI
\bI
\bIA
\bA
\bA
\bAN
\bN
\bN
\bN G
\bG
\bG
\bGN
\bN
\bN
\bNU
\bU
\bU
\bU/
\b/
\b/
\b/L
\bL
\bL
\bLI
\bI
\bI
\bIN
\bN
\bN
\bNU
\bU
\bU
\bUX
\bX
\bX
\bX
297 A Debian package is also available; contact Anthony Fok
298 <foka@debian.org>. The build scripts are in the
301 W
\bW
\bW
\bWI
\bI
\bI
\bIN
\bN
\bN
\bND
\bD
\bD
\bDO
\bO
\bO
\bOW
\bW
\bW
\bWS
\bS
\bS
\bS N
\bN
\bN
\bNT
\bT
\bT
\bT/
\b/
\b/
\b/9
\b9
\b9
\b95
\b5
\b5
\b5
302 So, you're stuck with Windows, eh? Well, don't worry, you
303 just need (to get) Cygnus' windows32 port of gnu
304 development stuff; have a look at
305 http://www.cygnus.com/gnu-win32.
307 To make GNU LilyPond under, brr, aargh, shudder...
308 windows32, well, simply type:
313 N
\bN
\bN
\bNo
\bo
\bo
\bot
\bt
\bt
\bte
\be
\be
\be If you rely on broken DOS/Windows tools such as
314 pkzip/WinZIP to unpack the distribution, make sure the
315 e
\be
\be
\ben
\bn
\bn
\bnt
\bt
\bt
\bti
\bi
\bi
\bir
\br
\br
\bre
\be
\be
\be source tree is unpacked correctly, in particular
316 the empty out directories (_
\bf_
\bl_
\bo_
\bw_
\be_
\br_
\b/_
\bo_
\bu_
\bt, _
\bl_
\bi_
\bb_
\b/_
\bo_
\bu_
\bt et. al.)
318 M
\bM
\bM
\bMU
\bU
\bU
\bUS
\bS
\bS
\bSI
\bI
\bI
\bIX
\bX
\bX
\bXT
\bT
\bT
\bTE
\bE
\bE
\bEX
\bX
\bX
\bX
319 Previous versions (before 0.1.39) used fonts from the TeX
320 macro package "MusixTeX". You can still use these, but
321 they are not supported. Since LilyPond's Feta font is
322 much prettier, you'd be seriously misguided if you used
323 them, but anyway, here are the installation instructions
324 for those deprecated fonts.
328 11/Jan/98 LilyPond 0.1.41 5
334 INSTALL(1) LilyPond documentation INSTALL(1)
337 [obsolete] I use the MusixTeX fonts those found in
338 MusixTeX T.73. Beware, the clef symbol seems to have
339 changed its position in some versions, (notably Egler's,
340 a.k.a. OpusTeX). The MusixTeX fonts are included in
341 MusixTeX (T73 or better), which can be had from any CTAN
344 ftp://ftp.shsu.edu/tex-archive/macros/musixtex/taupin
346 ftp://ftp.tex.ac.uk/tex-archive/macros/musixtex/taupin
348 ftp://ftp.dante.de/tex-archive/macros/musixtex/taupin
350 You only need the contents of the _
\bm_
\bf_
\b/ subdirectory of the
351 package. The primary site of the Taupin version is
352 ftp://hprib.lps.u-psud.fr/pub/music_zips/musixtex.zip
354 Install the musixtex fonts in a directory which TeX and MF
355 knows (if you are root, look for a directory which
356 contains the directories with AMS and CM source (*.mf)
357 files. Create a subdir lilypond or musixtex and copy the
358 fonts into that). Do not forget to rehash TeX (if
361 Example: my fonts are in
362 _
\b/_
\bu_
\bs_
\br_
\b/_
\bl_
\bo_
\bc_
\ba_
\bl_
\b/_
\bl_
\bi_
\bb_
\b/_
\bt_
\be_
\bx_
\bf_
\bo_
\bn_
\bt_
\bs_
\b/_
\bm_
\bu_
\bs_
\bi_
\bx_
\bt_
\be_
\bx_
\b/, and I have a symlink
364 _
\b/_
\bu_
\bs_
\br_
\b/_
\bl_
\bi_
\bb_
\b/_
\bt_
\be_
\bx_
\bm_
\bf_
\b/_
\bt_
\be_
\bx_
\bm_
\bf_
\b/_
\bf_
\bo_
\bn_
\bt_
\bs_
\b/_
\bs_
\bo_
\bu_
\br_
\bc_
\be_
\b/_
\bp_
\bu_
\bb_
\bl_
\bi_
\bc_
\b/. After I copied
365 the files, I ran "texhash"
367 Andreas Egler's version of MusixTeX, now called OpusTeX,
368 will also work. Andreas moved some characters around in
369 the fonts, so you have to edit the definitions in
370 _
\bt_
\be_
\bx_
\b/_
\be_
\bg_
\bl_
\be_
\br_
\bd_
\be_
\bf_
\bs_
\b._
\bt_
\be_
\bx.
372 A
\bA
\bA
\bAU
\bU
\bU
\bUT
\bT
\bT
\bTH
\bH
\bH
\bHO
\bO
\bO
\bOR
\bR
\bR
\bRS
\bS
\bS
\bS
373 Han-Wen Nienhuys <hanwen@stack.nl>
375 Jan Nieuwenhuizen <jan@digicash.com>
394 11/Jan/98 LilyPond 0.1.41 6