]> git.donarmstrong.com Git - lilypond.git/blob - INSTALL.text
release: 0.1.18
[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 Unix system with GNU tools. GNU LilyPond is known
29             to run on these unices: Linux, AIX, Digital Unix and
30             Solaris.
31
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.
35
36        +\bo    GNU C++ v2.7 or better, with libg++ installed.
37             Version 2.7.2 or better recommended.
38
39        +\bo    GNU make.
40
41        +\bo    Flex (2.5.1 or better).
42
43        +\bo    Bison. (Version 1.25 or better)
44
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:
48
49        +\bo    TeX
50
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
57
58        ftp://ftp.shsu.edu/tex-archive/macros/musixtex/taupin
59
60
61
62
63
64 26/Sep/97                LilyPond 0.1.18                        1
65
66
67
68
69
70 INSTALL(1)            LilyPond documentation           INSTALL(1)
71
72
73        ftp://ftp.tex.ac.uk/tex-archive/macros/musixtex/taupin
74
75        ftp://ftp.dante.de/tex-archive/macros/musixtex/taupin
76
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
81
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
86                 appreciated)
87
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
90        have.
91
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)
95
96        +\bo         Python.  Although perl is nice, python is
97                  better.  We will shift towards python for build
98                  scripts
99
100        +\bo         GNU find
101
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)
106
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:
109
110                configure
111                make install
112
113        This will install the following files:
114
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
121                /usr/local/bin/mi2mu
122                /usr/local/share/lilypond/*
123                /usr/lib/texmf/texmf/tex/lilypond/*
124
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-
127
128
129
130 26/Sep/97                LilyPond 0.1.18                        2
131
132
133
134
135
136 INSTALL(1)            LilyPond documentation           INSTALL(1)
137
138
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
142        your taste:
143
144                export CPPFLAGS="-I /home/me/my_include -DWEIRD_FOOBAR"
145                configure
146
147        CPPFLAGS are the preprocessor flags.
148
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
151        to make it with
152
153                configure --prefix=/home/me_myself_and_I/
154
155        In this case, you will have to set MFINPUTS, and TEXINPUTS
156        accordingly.
157
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:
161
162                configure --prefix=/usr/local --enable-tex-prefix=/usr/lib/texmf
163
164        Since GNU LilyPond currently is beta, you are advised to
165        also use
166
167                --enable-debugging
168                --enable-checking
169
170        other options include:
171
172        --enable-shared
173                 Make a shared library (gnu/linux, solaris (?)
174                 only )
175
176        --enable-printing
177                 Enable debugging print routines (lilypond -\b-\b-\b-d\bd\bd\bd
178                 option)
179
180        --enable-optimise
181                 Set maximum optimisation: compile with -\b-\b-\b-O\bO\bO\bO2\b2\b2\b2
182
183        --enable-profiling
184                 Compile with support for profiling
185
186        --enable-tex-prefix
187                 Set the directory where TeX and Metafont live
188
189        --enable-tex-dir
190                 Set then directory TeX input is in (detected as a
191                 subdir of tex-prefix)
192
193
194
195
196 26/Sep/97                LilyPond 0.1.18                        3
197
198
199
200
201
202 INSTALL(1)            LilyPond documentation           INSTALL(1)
203
204
205        --enable-mf-dir
206                 Set the directory mf input is in (idem)
207                 [obsolete]
208
209        --enable-out-dir
210                 Set the directory for machine generated output.
211
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
214                 Real Life usage.
215
216                 If you do
217
218                         make all
219
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).
224
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
226
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
232        directory.
233
234        Example: on my system, I do debugging and lots compiling.
235        For this I use the configuration as follows:
236
237                configure --prefix=~ --enable-debugging --enable-printing --enable-checking
238                make all
239
240        and I want to do profiling. For that I use
241
242                configure --prefix=~ --enable-debugging --disable-printing\
243                        --disable-checking --enable-profiling --enable-optimise\
244                        --enable-out-dir=out-profile
245
246                make OUTDIR_NAME=out-profile all
247
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.
253
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
256
257                make install
258
259
260
261
262 26/Sep/97                LilyPond 0.1.18                        4
263
264
265
266
267
268 INSTALL(1)            LilyPond documentation           INSTALL(1)
269
270
271        should do the trick.
272
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
278        applicable)
279
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
282        pointing to that in
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"
285
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
289                  flag for this file.
290
291        +\bo         Perl5.003 and Perl5.004 use different syntax for
292                  pod2html:
293
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:
296
297                lilypond someinput.ly
298                tex lelie.tex
299                xdvi test&
300
301        This is what the output looks like over here:
302
303                GNU LilyPond 0.0.78 #4/FlowerLib 1.1.24 #0
304                Parsing ... [/home/hw/share/lilypond/init//
305                        <..etc..>
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 ...
313
314                hw:~/musix/spacer$ xdvi lelie&
315                [1] 855
316
317        Check out the input files, some of them have comments
318        Please refer to the man page for more information.
319
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
325
326
327
328 26/Sep/97                LilyPond 0.1.18                        5
329
330
331
332
333
334 INSTALL(1)            LilyPond documentation           INSTALL(1)
335
336
337        create the RPM as a normal user the permissions will not
338        be set correctly, unfortunately)
339
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
342
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.
348
349        To make GNU LilyPond under, brr, aargh, shudder...
350        windows32, well, simply type:
351
352                bash configure
353                make
354
355
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>
358
359        Jan Nieuwenhuizen <jan@digicash.com>
360
361        Have fun!
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 26/Sep/97                LilyPond 0.1.18                        6
395
396