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
20 tar -C /usr/lib/texmf/fonts/source/ -zxf musixtex-T73.tgz 'mf/*'
22 The detailed instructions follow here.
25 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
26 For compilation you need.
28 +
\bo A GNU system: GNU LilyPond is known to run on these
29 GNU systems: Linux, AIX, Digital Unix and Solaris.
31 If you have the Cygnus WINDOWS32 port of the GNU
32 utils, it will even work in Windows NT/95, but we
33 don't promise to support it.
35 +
\bo GNU C++ v2.7 or better, with libg++ installed.
36 Version 2.7.2 or better recommended.
40 +
\bo Flex (2.5.1 or better).
42 +
\bo Bison. (Version 1.25 or better)
44 R
\bR
\bR
\bRU
\bU
\bU
\bUN
\bN
\bN
\bNN
\bN
\bN
\bNI
\bI
\bI
\bIN
\bN
\bN
\bNG
\bG
\bG
\bG
45 GNU LilyPond does use a lot of resources. For operation
46 you need the following:
50 +
\bo The MusixTeX fonts (I included those found in
51 MusixTeX T.73). Beware, the clef symbol seems to have
52 changed its position in some versions, (notably
53 Egler's, a.k.a. OpusTeX). The MusixTeX fonts are
54 included in MusixTeX (T73 or better), which can be
55 had from any CTAN site, e.g. at
57 ftp://ftp.shsu.edu/tex-archive/macros/musixtex/taupin
59 ftp://ftp.tex.ac.uk/tex-archive/macros/musixtex/taupin
64 2/Dec/97 LilyPond 0.1.37 1
70 INSTALL(1) LilyPond documentation INSTALL(1)
73 ftp://ftp.dante.de/tex-archive/macros/musixtex/taupin
75 You only need the contents of the _
\bm_
\bf_
\b/
76 subdirectory of the package. The primary site of
77 the Taupin version is ftp://hprib.lps.u-
78 psud.fr/pub/music_zips/musixtex.zip
80 Andreas Egler's version of MusixTeX, now called
81 OpusTeX, will also work. Andreas moved some
82 characters around in the fonts, so you have to
83 edit the definitions in tex/eglerdefs.tex (patch
86 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
87 Although not strictly necessary, these are recommended to
90 +
\bo Perl-5. Most documentation was created with the
91 perl's Plain Old Documentation. (I use 5.003)
93 +
\bo Python. Although perl is nice, python is
94 better. We will shift towards python for build
99 +
\bo A fast computer (a full page of music typically
100 takes 1 minute on my 486/133, using the
101 -
\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 compile. It's lot slower than
102 most MusiXTeX preprocessors)
104 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
105 to install GNU LilyPond, simply type:
110 This will install the following files:
112 /usr/local/man/man1/mi2mu.1
113 /usr/local/man/man1/convert-mudela.1
114 /usr/local/man/man1/mudela-book.1
115 /usr/local/man/man1/lilypond.1
116 /usr/local/lib/libflower.{so,a}
117 /usr/local/bin/lilypond
119 /usr/local/share/lilypond/*
120 /usr/lib/texmf/texmf/tex/lilypond/*
122 The TeX include directory is detected dynamically, but it
123 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-
124 d
\bd
\bd
\bdi
\bi
\bi
\bir
\br
\br
\br. The above assumes that you are root and have the GNU
125 development tools, and your make is GNU make. If this is
126 not the case, you can adjust your environment variables to
130 2/Dec/97 LilyPond 0.1.37 2
136 INSTALL(1) LilyPond documentation INSTALL(1)
141 export CPPFLAGS="-I /home/me/my_include -DWEIRD_FOOBAR"
144 CPPFLAGS are the preprocessor flags.
146 the configure script is Cygnus configure, and it will
147 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
150 configure --prefix=/home/me_myself_and_I/
152 In this case, you will have to set MFINPUTS, and TEXINPUTS
155 If you want to install GNU LilyPond in _
\b/_
\bu_
\bs_
\br_
\b/_
\bl_
\bo_
\bc_
\ba_
\bl, and
156 your TeX has no default hooks for local stuff (mine is
157 broken too), you can do:
159 configure --prefix=/usr/local --enable-tex-prefix=/usr/lib/texmf
161 Since GNU LilyPond currently is beta, you are advised to
167 other options include:
170 Make a shared library (gnu/linux, solaris (?)
174 Enable debugging print routines (lilypond -
\b-
\b-
\b-d
\bd
\bd
\bd
178 Set maximum optimisation: compile with -
\b-
\b-
\b-O
\bO
\bO
\bO2
\b2
\b2
\b2
181 Compile with support for profiling
184 Set the directory where TeX and Metafont live
187 Set then directory TeX input is in (detected as a
188 subdir of tex-prefix)
191 Set the directory mf input is in (idem)
196 2/Dec/97 LilyPond 0.1.37 3
202 INSTALL(1) LilyPond documentation INSTALL(1)
206 Set the directory for machine generated output.
208 All options are documented in the _
\bc_
\bo_
\bn_
\bf_
\bi_
\bg_
\bu_
\br_
\be help
209 The 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
216 everything will be compiled, but nothing will be
217 installed. The resulting binaries can be found
218 in the subdirectories _
\bo_
\bu_
\bt_
\b/ (which contain all
219 files generated during compilation).
221 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
223 LilyPond does not follow the GNU standards when it comes
224 to configuring and making Makefiles. In LilyPond, _
\bm_
\ba_
\bk_
\be
225 generates _
\ba_
\bl_
\bl output in output directories (called _
\bo_
\bu_
\bt_
\b/,
226 by default). You can have multiple compiles from the same
227 source-tree, by overriding the setting for the output
230 Example: on my system, I do debugging and lots compiling.
231 For this I use the configuration as follows:
233 configure --prefix=~ --enable-debugging --enable-printing --enable-checking
236 and I want to do profiling. For that I use
238 configure --prefix=~ --enable-debugging --disable-printing\
239 --disable-checking --enable-profiling --enable-optimise\
240 --enable-out-dir=out-profile
242 make OUTDIR_NAME=out-profile all
244 These two commands build two entirely separate versions of
245 LilyPond. In Real Life, you would probably also want to
246 have two different prefixes. On my machine this is no
247 problem; I never do make install. My prefix dirs are
248 linked back to my source directory.
250 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
251 If you have done a successful make, then a simple
257 Install the musixtex fonts in a directory which TeX and MF
258 knows (if you are root, look for a directory which
262 2/Dec/97 LilyPond 0.1.37 4
268 INSTALL(1) LilyPond documentation INSTALL(1)
271 contains the directories with AMS and CM source (*.mf)
272 files. Create a subdir lilypond or musixtex and copy the
273 fonts into that). Do not forget to rehash TeX (if
276 Example: my fonts are in
277 _
\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
279 _
\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
280 the files, I ran "texhash"
282 C
\bC
\bC
\bCA
\bA
\bA
\bAV
\bV
\bV
\bVE
\bE
\bE
\bEA
\bA
\bA
\bAT
\bT
\bT
\bTS
\bS
\bS
\bS
283 +
\bo The -O2 option to gcc triggers a gcc bug on DEC
284 Alpha in dstream.cc. You should turn off this
287 +
\bo Perl5.003 and Perl5.004 use different syntax for
290 E
\bE
\bE
\bEX
\bX
\bX
\bXA
\bA
\bA
\bAM
\bM
\bM
\bMP
\bP
\bP
\bPL
\bL
\bL
\bLE
\bE
\bE
\bE
291 This is what I type in my xterm:
293 lilypond someinput.ly
297 This is what the output looks like over here:
299 GNU LilyPond 0.0.78 #4/FlowerLib 1.1.24 #0
300 Parsing ... [/home/hw/share/lilypond/init//
302 init//performer.ly]]][input/kortjakje.ly]
303 Creating elements ...[8][16][24][25]
304 Preprocessing elements...
305 Calculating column positions ... [14][25]
306 Postprocessing elements...
307 TeX output to lelie.tex ...
308 Creating MIDI elements ...MIDI output to lelie.midi ...
310 hw:~/musix/spacer$ xdvi lelie&
313 Check out the input files, some of them have comments
314 Please refer to the man page for more information.
316 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
317 RedHat Linux users should be able to get a RPM. A spec
318 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
319 create an rpm as a normal user. Be sure you have a
320 ~/.rpmrc, and edit the RPM-dir in _
\bV_
\ba_
\br_
\bi_
\ba_
\bb_
\bl_
\be_
\bs_
\b._
\bm_
\ba_
\bk_
\be. (If you
321 create the RPM as a normal user the permissions will not
322 be set correctly, unfortunately)
328 2/Dec/97 LilyPond 0.1.37 5
334 INSTALL(1) LilyPond documentation INSTALL(1)
337 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
338 A Debian package is in the works
340 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
341 So, you're stuck with Windows, eh? Well, don't worry, you
342 just need (to get) Cygnus' windows32 port of gnu
343 development stuff; have a look at
344 http://www.cygnus.com/gnu-win32.
346 To make GNU LilyPond under, brr, aargh, shudder...
347 windows32, well, simply type:
352 Note: If you rely on broken DOS/Windows tools such as
354 to unpack the distribution, make sure the e
\be
\be
\ben
\bn
\bn
\bnt
\bt
\bt
\bti
\bi
\bi
\bir
\br
\br
\bre
\be
\be
\be
356 is unpacked correctly, in particular the empty out
358 (_
\bf_
\bl_
\bo_
\bw_
\be_
\br_
\b/_
\bo_
\bu_
\bt, _
\bl_
\bi_
\bb_
\b/_
\bo_
\bu_
\bt et. al.)
360 A
\bA
\bA
\bAU
\bU
\bU
\bUT
\bT
\bT
\bTH
\bH
\bH
\bHO
\bO
\bO
\bOR
\bR
\bR
\bRS
\bS
\bS
\bS
361 Han-Wen Nienhuys <hanwen@stack.nl>
363 Jan Nieuwenhuizen <jan@digicash.com>
394 2/Dec/97 LilyPond 0.1.37 6