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