]> git.donarmstrong.com Git - lilypond.git/blob - Documentation/INSTALL.pod
release: 0.0.47
[lilypond.git] / Documentation / INSTALL.pod
1 =head1 NAME
2
3 INSTALL - installing LilyPond
4
5 =head1 DESCRIPTION
6
7 This page documents installation  and compilation of LilyPond
8
9 =head1 IMPORTANT
10
11 if you have downloaded a
12
13         *.pre*
14
15 version, then this is version is I<not> meant for producing nice
16 output, but to keep your patchsets up to date.  It might not even compile.
17
18 =head1 PREREQUISITES
19
20 For compilation you need.
21
22 =over 5
23
24 =item *
25 Unix. LilyPond is known to run on Linux, AIX, Digital Unix and
26 Solaris
27
28 If you have the Cygnus WIN32 port of the GNU utils, it will
29 even work in Lose NT/95, but don't promise to support it.
30
31 =item *
32 GNU C++ v2.7 or better, with libg++ installed.  Version 2.7.2
33 or better recommended. I almost positive that it will not compile with
34 AT&T CC.
35
36 =item *
37 Bash. Most scripts will continue to work with a stock sh, but they
38 might generate (harmless) syntax errors
39
40 =item *
41 GNU make. 
42
43 =item *
44 Flex (2.5.1 or better). 
45
46 =item *
47 Bison.
48
49 =back
50
51 =head1 RECOMMENDED
52
53 =over 5
54
55 =item *
56 Perl.  Some (mostly unimportant scripts) use Perl for trivial
57 operations. The documentation was created with the perl's Plain Old
58 Documentation.
59
60 =item *
61 (GNU) find
62
63 =back
64
65
66
67 =head1 CONFIGURING and COMPILING
68
69 to install LilyPond, simply type:
70
71         configure
72         make install
73
74 This will install the following files:
75
76         /usr/local/man/man1/lilypond.1
77         /usr/local/lib/libflower.{so,a}
78         /usr/local/bin/lilypond
79         /usr/local/bin/mi2mu
80         /usr/local/share/lilypond/*
81         /usr/lib/texmf/texmf/tex/lilypond/* 
82
83 The TeX include directory is detected dynamically, but it can be
84 adjusted with B<--enable-texprefix>. The above assumes that you are root and 
85 have the gnu
86 development tools, and your make is gnu make.  If this is not the
87 case, you can adjust your environment variables to your taste:
88
89         export CPPFLAGS="-I /home/me/my_include -DWEIRD_FOOBAR" 
90         configure
91
92 C<CPPFLAGS> are the preprocessor flags. 
93
94 the configure script is Cygnus configure, and it will accept
95 B<--help>. If you are not root, you will probably have to make it with
96
97         configure --prefix=/home/me_myself_and_I/
98
99 Since LilyPond currently is beta, You are advised to also use
100
101         --enable-debug
102         --enable-checking
103
104 other options include:
105
106         --enable-shared
107         --enable-printing
108         --enable-optimise
109         --enable-profiling
110
111 The option B<--enable-optimise> is recommended for Real Life usage.
112
113 If you do
114
115         make all
116
117 everything will be compiled, but nothing will be installed.  The
118 resulting binaries can be found in the subdirectory
119 F<bin/>.
120
121 =head1 RUNNING
122
123 LilyPond does use a lot of resources. For operation you need the following:
124
125
126 =over 5
127
128 =item *
129 A fast computer (a full page of music typically takes 1 minute
130 on my 486/66, using the B<--enable-checking> compile. It's lot slower
131 than most MusiXTeX preprocessors)
132
133 =item *
134 TeX
135
136 =item *
137 The MusixTeX fonts. (I use those found in MusixTeX
138 T.59)
139
140 =back
141
142 Please refer to the man page for more information.
143
144 =head1 REDHAT LINUX
145
146 RedHat Linux users should be able to get a RPM. A spec file is in
147 F<make/lilypond.spec>.
148
149
150 =head1 WINDOZE
151
152 Windows NT:
153
154 you need the cygnus win32 gnu port development stuff; have a look
155 at http://www.cygnus.com/gnu-win32.
156
157 to make LilyPond under, brr, aargh, well, simply type:
158
159         bash configure
160         make win32
161
162 =head1 PLATFORMS
163
164 LilyPond (pl 0.0.39) is known to compile on the following platforms:
165
166         * linux 2.0.28, g++ 2.7.2[.1]
167         * aix 4.1, g++ 2.7.2
168         * windows-nt 4.0, cygnus gnu-win32 beta17.1 (~=g++ 2.7.2)
169         * linux 2.0.28 X to doze, gcc-go32 (~=g++ 2.7.2) [exec. untested]
170
171 =head1 AUTHORS
172
173         Han-Wen Nienhuys <hanwen@stack.nl>
174
175         Jan Nieuwenhuizen <jan@digicash.com>
176
177
178 Have fun!