@c -*- coding: us-ascii; mode: texinfo; -*- @node Compiling LilyPond @chapter Compiling LilyPond @menu * Compiling from source:: * Concurrent Stable and Development Versions:: @end menu @node Compiling from source @section Compiling from source TODO (see AU 1 for now) @c currently broken; will fix after 2.14 @c @include compile.itely @node Concurrent Stable and Development Versions @section Concurrent Stable and Development Versions It can be useful to have both the stable and the development versions of Lilypond available at once. One way to do this on GNU/Linux is to install the stable version using the precompiled binary, and run the development version from the source tree. After running @command{make all} from the top directory of the Lilypond source files, there will be a binary called @code{lilypond} in the @code{out} directory: @example <@var{path to}>/lilypond/out/bin/lilypond @end example This binary can be run without actually doing the @code{make install} command. The advantage to this is that you can have all of the latest changes available after pulling from git and running @code{make all}, without having to uninstall the old version and reinstall the new. So, to use the stable version, install it as usual and use the normal commands: @example lilypond foobar.ly @end example To use the development version, create a link to the binary in the source tree by saving the following line in a file somewhere in your PATH: @example exec <@var{path to}>/lilypond/out/bin/lilypond "$@@" @end example Save it as @code{Lilypond} (with a capital L to distinguish it from the stable @code{lilypond}), and make it executable: @example chmod +x Lilypond @end example Then you can invoke the development version this way: @example Lilypond foobar.ly @end example TODO: ADD - how to build with debug info - other compilation tricks for developers