firefox ~/lilypond-git/build/out-www/offline-root/index.html
@end example
-@subsubheading Other options
-
-To select different build options, or isolate certain parts of the
-build, or to use multiple CPUs while building, read the rest of
-this chapter.
-
-@subsubheading Installing LilyPond with lilydev
+@subsubheading Installing
Don't. There is no reason to install lilypond within lilydev.
All development work can (and should) stay within the
or typesetting work should be done with an official GUB release.
+@subsubheading Problems and other options
+
+To select different build options, or isolate certain parts of the
+build, or to use multiple CPUs while building, read
+@ref{Compiling}.
+
+In particular, contributors working on the documentation should be
+aware of some bugs in the build system, and should read the
+workarounds in @ref{Generating documentation}.
+
+
@node Now start work!
@section Now start work!
Téléchargez puis décompressez l'archive zip. Recopiez le répertoire
@code{lilyfonts} dans @file{@var{SHARE_DIR}/lilypond/current} -- voir
-@rlearning{Autres sources d'information} à ce sujet. Renommez le
+@rlearning{Autres sources de documentation} à ce sujet. Renommez le
répertoire @code{fonts} qui s'y trouve en @code{fonts_orig}, puis les
répertoire @code{lilyfonts} en @code{fonts}. Il vous suffira, pour
retrouver la fonte Feta, de renommer @code{fonts_orig} en @code{fonts}.
@seealso
Manuel d'initiation :
-@rlearning{Autres sources d'information}.
+@rlearning{Autres sources de documentation}.
@knownissues
@qq{interprète}. Les différents contextes disponibles en matière de
MIDI sont répertoriés dans le fichier d'initialisation
@file{../ly/performer-init.ly} -- pour plus de détail, voir
-@rlearning{Autres sources d'information}.
+@rlearning{Autres sources de documentation}.
Si vous voulez vous passer des nuances dans votre fichier MIDI, il vous
suffit d'insérer les lignes suivantes dans votre bloc
@code{\midi@{ @}}.
Nous allons, par défaut, de 0,25 pour un @notation{ppppp} à 0,95 pour un
@notation{fffff}. Les correspondances entre nuance et fraction de
volume sont répertoriées dans le fichier @file{../scm/midi.scm} --
-consultez la rubrique @rlearning{Autres sources d'information} si vous
-ne savez comment le localiser. Vous pouvez modifier ou étendre ce jeu
-grâce à une fonction qui prendra en argument une indication de nuance et
-renverra la fraction désirée, puis en affectant cette fonction à
-@code{Score.dynamicAbsoluteVolumeFunction}.
+consultez la rubrique @rlearning{Autres sources de documentation} si
+vous ne savez comment le localiser. Vous pouvez modifier ou étendre ce
+jeu grâce à une fonction qui prendra en argument une indication de
+nuance et renverra la fraction désirée, puis en affectant cette fonction
+à @code{Score.dynamicAbsoluteVolumeFunction}.
Prenons un exemple. Votre partition comporte un @notation{rinforzando}
que vous avez indiqué par @code{\rfz}. Cette indication de nuance
@menu
* Running ./autogen.sh::
-* Running ./configure::
+* Running ../configure::
@end menu
command from your top source directory:
@example
-./autogen.sh
+./autogen.sh --noconfigure
@end example
-This will:
-
-@enumerate
-@item generate a number of files and directories to aid
+This will generate a number of files and directories to aid
configuration, such as @file{configure}, @file{README.txt}, etc.
-@item automatically run the @command{./configure} command.
-@end enumerate
+Next, create the build directory with:
+
+@example
+mkdir build/
+cd build/
+@end example
+
+We heavily recommend building lilypond inside a separate directory
+with this method.
+
+@node Running ../configure
+@subsection Running @command{../configure}
-@node Running ./configure
-@subsection Running @command{./configure}
@menu
* Configuration options::
* Checking build dependencies::
* Configuring target directories::
-* Making an out-of-tree build::
@end menu
@node Configuration options
@unnumberedsubsubsec Configuration options
-The @command{./configure} command (generated by
+@warning{make sure that you are in the @file{build/} subdirectory
+of your source tree.}
+
+The @command{../configure} command (generated by
@command{./autogen.sh}) provides many options for configuring
@command{make}. To see them all, run:
@example
-./configure --help
+../configure --help
@end example
@node Checking build dependencies
@unnumberedsubsubsec Checking build dependencies
-When @command{./configure} is run without any arguments, it will
+@warning{make sure that you are in the @file{build/} subdirectory
+of your source tree.}
+
+When @command{../configure} is run without any arguments, it will
check to make sure your system has everything required for
-compilation. This is done automatically when
-@command{./autogen.sh} is run. If any build dependency is
-missing, @command{./configure} will return with:
+compilation:
+
+@example
+../configure
+@end example
+
+If any build dependency is missing, @command{../configure} will
+return with:
@example
ERROR: Please install required programs: @var{foo}
If you intend to build the documentation locally, you will need to
install or update these programs accordingly.
-@warning{@command{./configure} may fail to issue warnings for
+@warning{@command{../configure} may fail to issue warnings for
certain documentation build requirements that are not met. If you
experience problems when building the documentation, you may need
to do a manual check of @ref{Requirements for building
@node Configuring target directories
@unnumberedsubsubsec Configuring target directories
+@warning{make sure that you are in the @file{build/} subdirectory
+of your source tree.}
+
If you intend to use your local build to install a local copy of
the program, you will probably want to configure the installation
directory. Here are the relevant lines taken from the output of
-@command{./configure@tie{}--help}:
+@command{../configure@tie{}--help}:
@quotation
By default, `@command{make@tie{}install}' will install all the
A typical installation prefix is @file{$HOME/usr}:
@example
-./configure --prefix=$HOME/usr
+../configure --prefix=$HOME/usr
@end example
Note that if you plan to install a local build on a system where
It is also possible to specify separate installation directories
for different types of program files. See the full output of
-@command{./configure@tie{}--help} for more information.
+@command{../configure@tie{}--help} for more information.
If you encounter any problems, please see @ref{Problems}.
-@node Making an out-of-tree build
-@unnumberedsubsubsec Making an out-of-tree build
-
-It is possible to compile LilyPond in a build tree different from
-the source tree, using the @option{--srcdir} option of
-@command{configure}. Note that in some cases you may need to
-remove the output of a previous @command{configure} command by
-running @command{make@tie{}distclean} in the main source directory
-before configuring the out-of-tree build:
-
-@example
-make distclean
-mkdir lily-build && cd lily-build
-@var{sourcedir}/configure --srcdir=@var{sourcedir}
-@end example
-
-
@node Compiling LilyPond
@section Compiling LilyPond
@node Using make
@subsection Using @command{make}
+@warning{make sure that you are in the @file{build/} subdirectory
+of your source tree.}
+
LilyPond is compiled with the @command{make} command. Assuming
@command{make} is configured properly, you can simply run:
@item
Reset:
-@example
-make doc-clean @emph{## use only as a last resort.}
-@end example
+In some cases, it is possible to clean the compiled documentation
+with @samp{make@tie{}doc-clean}, but this method is not guaranteed
+to fix everything. Instead, we recommend that you delete your
+@file{build/} directory, and begin compiling from scratch. Since
+the documentation compile takes much longer than the
+non-documentation compile, this does not increase the overall time
+by a great deal.
+
@end itemize
@node Building documentation