]> git.donarmstrong.com Git - lilypond.git/blob - INSTALL.text
release: 0.1.20
[lilypond.git] / INSTALL.text
1
2
3
4 INSTALL(1)            LilyPond documentation           INSTALL(1)
5
6
7 N\bN\bN\bNA\bA\bA\bAM\bM\bM\bME\bE\bE\bE
8        INSTALL - installing GNU LilyPond
9
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
12        LilyPond
13
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
16
17                configure
18                make
19                make install
20                tar -C /usr/lib/texmf/fonts/source/ -zxf musixtex-T73.tgz 'mf/*'
21
22        The detailed instructions follow here.
23
24
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.
27
28        +\bo    A GNU system: GNU LilyPond is known to run on these
29             GNU systems: Linux, AIX, Digital Unix and Solaris.
30
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.
34
35        +\bo    GNU C++ v2.7 or better, with libg++ installed.
36             Version 2.7.2 or better recommended.
37
38        +\bo    GNU make.
39
40        +\bo    Flex (2.5.1 or better).
41
42        +\bo    Bison. (Version 1.25 or better)
43
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:
47
48        +\bo    TeX
49
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
56
57        ftp://ftp.shsu.edu/tex-archive/macros/musixtex/taupin
58
59        ftp://ftp.tex.ac.uk/tex-archive/macros/musixtex/taupin
60
61
62
63
64 8/Oct/97                 LilyPond 0.1.20                        1
65
66
67
68
69
70 INSTALL(1)            LilyPond documentation           INSTALL(1)
71
72
73        ftp://ftp.dante.de/tex-archive/macros/musixtex/taupin
74
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
79
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
84                 appreciated)
85
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
88        have.
89
90        +\bo         Perl-5.  Most scripts are written in Perl. Most
91                  documentation was created with the perl's Plain
92                  Old Documentation. (I use 5.003)
93
94        +\bo         Python.  Although perl is nice, python is
95                  better.  We will shift towards python for build
96                  scripts
97
98        +\bo         GNU find
99
100        +\bo         A fast computer (a full page of music typically
101                  takes 1 minute on my 486/133, using the
102                  -\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
103                  most MusiXTeX preprocessors)
104
105 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
106        to install GNU LilyPond, simply type:
107
108                configure
109                make install
110
111        This will install the following files:
112
113                /usr/local/man/man1/mi2mu.1
114                /usr/local/man/man1/convert-mudela.1
115                /usr/local/man/man1/mudela-book.1
116                /usr/local/man/man1/lilypond.1
117                /usr/local/lib/libflower.{so,a}
118                /usr/local/bin/lilypond
119                /usr/local/bin/mi2mu
120                /usr/local/share/lilypond/*
121                /usr/lib/texmf/texmf/tex/lilypond/*
122
123        The TeX include directory is detected dynamically, but it
124        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-
125        d\bd\bd\bdi\bi\bi\bir\br\br\br. The above assumes that you are root and have the GNU
126        development tools, and your make is GNU make.  If this is
127
128
129
130 8/Oct/97                 LilyPond 0.1.20                        2
131
132
133
134
135
136 INSTALL(1)            LilyPond documentation           INSTALL(1)
137
138
139        not the case, you can adjust your environment variables to
140        your taste:
141
142                export CPPFLAGS="-I /home/me/my_include -DWEIRD_FOOBAR"
143                configure
144
145        CPPFLAGS are the preprocessor flags.
146
147        the configure script is Cygnus configure, and it will
148        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
149        to make it with
150
151                configure --prefix=/home/me_myself_and_I/
152
153        In this case, you will have to set MFINPUTS, and TEXINPUTS
154        accordingly.
155
156        If you want to install GNU LilyPond in _\b/_\bu_\bs_\br_\b/_\bl_\bo_\bc_\ba_\bl, and
157        your TeX has no default hooks for local stuff (mine is
158        broken too), you can do:
159
160                configure --prefix=/usr/local --enable-tex-prefix=/usr/lib/texmf
161
162        Since GNU LilyPond currently is beta, you are advised to
163        also use
164
165                --enable-debugging
166                --enable-checking
167
168        other options include:
169
170        --enable-shared
171                 Make a shared library (gnu/linux, solaris (?)
172                 only )
173
174        --enable-printing
175                 Enable debugging print routines (lilypond -\b-\b-\b-d\bd\bd\bd
176                 option)
177
178        --enable-optimise
179                 Set maximum optimisation: compile with -\b-\b-\b-O\bO\bO\bO2\b2\b2\b2
180
181        --enable-profiling
182                 Compile with support for profiling
183
184        --enable-tex-prefix
185                 Set the directory where TeX and Metafont live
186
187        --enable-tex-dir
188                 Set then directory TeX input is in (detected as a
189                 subdir of tex-prefix)
190
191        --enable-mf-dir
192                 Set the directory mf input is in (idem)
193
194
195
196 8/Oct/97                 LilyPond 0.1.20                        3
197
198
199
200
201
202 INSTALL(1)            LilyPond documentation           INSTALL(1)
203
204
205                 [obsolete]
206
207        --enable-out-dir
208                 Set the directory for machine generated output.
209
210                 All options are documented in the _\bc_\bo_\bn_\bf_\bi_\bg_\bu_\br_\be help
211                 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
212                 Real Life usage.
213
214                 If you do
215
216                         make all
217
218                 everything will be compiled, but nothing will be
219                 installed.  The resulting binaries can be found
220                 in the subdirectories _\bo_\bu_\bt_\b/ (which contain all
221                 files generated during compilation).
222
223        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
224
225        LilyPond does not follow the GNU standards when it comes
226        to configuring and making Makefiles. In LilyPond, _\bm_\ba_\bk_\be
227        generates _\ba_\bl_\bl output in output directories (called _\bo_\bu_\bt_\b/,
228        by default).  You can have multiple compiles from the same
229        source-tree, by overriding the setting for the output
230        directory.
231
232        Example: on my system, I do debugging and lots compiling.
233        For this I use the configuration as follows:
234
235                configure --prefix=~ --enable-debugging --enable-printing --enable-checking
236                make all
237
238        and I want to do profiling. For that I use
239
240                configure --prefix=~ --enable-debugging --disable-printing\
241                        --disable-checking --enable-profiling --enable-optimise\
242                        --enable-out-dir=out-profile
243
244                make OUTDIR_NAME=out-profile all
245
246        These two commands build two entirely separate versions of
247        LilyPond. In Real Life, you would probably also want to
248        have two different prefixes. On my machine this is no
249        problem; I never do make install. My prefix dirs are
250        linked back to my source directory.
251
252 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
253        If you have done a successful make, then a simple
254
255                make install
256
257        should do the trick.
258
259
260
261
262 8/Oct/97                 LilyPond 0.1.20                        4
263
264
265
266
267
268 INSTALL(1)            LilyPond documentation           INSTALL(1)
269
270
271        Install the musixtex fonts in a directory which TeX and MF
272        knows (if you are root, look for a directory which
273        contains the directories with AMS and CM source (*.mf)
274        files. Create a subdir lilypond or musixtex and copy the
275        fonts into that). Do not forget to rehash TeX (if
276        applicable)
277
278        Example: my fonts are in
279        _\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
280        pointing to that in
281        _\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
282        the files, I ran "texhash"
283
284 C\bC\bC\bCA\bA\bA\bAV\bV\bV\bVE\bE\bE\bEA\bA\bA\bAT\bT\bT\bTS\bS\bS\bS
285        +\bo         The -O2 option to gcc triggers a gcc bug on DEC
286                  Alpha in dstream.cc. You should turn off this
287                  flag for this file.
288
289        +\bo         Perl5.003 and Perl5.004 use different syntax for
290                  pod2html:
291
292 E\bE\bE\bEX\bX\bX\bXA\bA\bA\bAM\bM\bM\bMP\bP\bP\bPL\bL\bL\bLE\bE\bE\bE
293        This is what I type in my xterm:
294
295                lilypond someinput.ly
296                tex lelie.tex
297                xdvi test&
298
299        This is what the output looks like over here:
300
301                GNU LilyPond 0.0.78 #4/FlowerLib 1.1.24 #0
302                Parsing ... [/home/hw/share/lilypond/init//
303                        <..etc..>
304                        init//performer.ly]]][input/kortjakje.ly]
305                Creating elements ...[8][16][24][25]
306                Preprocessing elements...
307                Calculating column positions ... [14][25]
308                Postprocessing elements...
309                TeX output to lelie.tex ...
310                Creating MIDI elements ...MIDI output to lelie.midi ...
311
312                hw:~/musix/spacer$ xdvi lelie&
313                [1] 855
314
315        Check out the input files, some of them have comments
316        Please refer to the man page for more information.
317
318 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
319        RedHat Linux users should be able to get a RPM. A spec
320        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
321        create an rpm as a normal user. Be sure you have a
322        ~/.rpmrc, and edit the RPM-dir in _\bV_\ba_\br_\bi_\ba_\bb_\bl_\be_\bs_\b._\bm_\ba_\bk_\be. (If you
323        create the RPM as a normal user the permissions will not
324        be set correctly, unfortunately)
325
326
327
328 8/Oct/97                 LilyPond 0.1.20                        5
329
330
331
332
333
334 INSTALL(1)            LilyPond documentation           INSTALL(1)
335
336
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
339
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.
345
346        To make GNU LilyPond under, brr, aargh, shudder...
347        windows32, well, simply type:
348
349                bash configure
350                make
351
352
353 A\bA\bA\bAU\bU\bU\bUT\bT\bT\bTH\bH\bH\bHO\bO\bO\bOR\bR\bR\bRS\bS\bS\bS
354        Han-Wen Nienhuys <hanwen@stack.nl>
355
356        Jan Nieuwenhuizen <jan@digicash.com>
357
358        Have fun!
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394 8/Oct/97                 LilyPond 0.1.20                        6
395
396