+2002-08-11 Jan Nieuwenhuizen <janneke@gnu.org>
+
+ * Documentation/windows/installing.texi:
+ * Documentation/windows/compiling.texi:
+ * cygwin/README: Update to reflect new binary release setup and
+ build instructions.
+
2002-08-10 Jan Nieuwenhuizen <janneke@gnu.org>
* server.el.patch: Update.
You need the following packages to compile Lilypond on Windows.
@table @code
-@item The GNU + Cygnus tools, 1.3.6 or newer.
-Check out the @uref{http://sources.redhat.com/cygwin,Cygwin webpage}.
+@item The GNU + Cygnus tools, 1.3.10 or newer.
+Check out the @uref{http://cygwin.com,Cygwin webpage}.
You can get the latest version of the GNU + Cygnus tools from cygnus
-@uref{http://sources.redhat.com/cygwin/mirrors.html,mirror site}.
-Install everything, including tetex and texmf.
-@item GUILE 1.4, or newer.
-Check out the @uref{http://www.gnu.org/software/guile.html,GUILE
-webpage}. You may need the patch @file{guile-1.4-gnu-windows.patch}
-included in LilyPond's source distribution.
+@uref{http://cygwin.com/mirrors.html,mirror site}.
@end table
@subsection Cross compiling
-These binaries are cross compiled for Windows on a GNU/Linux box. You
-may want to check out the
-@uref{http://www.lilypond.org/gnu-windows/cygwin-cross.tar.gz,cross
-compilation scripts}.
+These binaries are cross compiled for Windows on a GNU/Linux box using
+mknetrel. Get it from:
+@quotation
+@example
+ cvs -d:pserver:anoncvs@@sources.redhat.com:/cvs/cygwin-apps co mknetrel
+@end example
+@end quotation
+
+If your distribution does not include a Cygwin cross building
+environment, you can quite easily create one using mknetrel.
+Apply
+@uref{http://lilypond.org/people/jan/cygwin/mknetnel/mknetrel-cross-tools-.patch,this
+patch}, and read @file{CROSS-TOOLS}.
+
+Although mknetrel is well suited for this, the mknetrel maintainer
+does not see any reason to include this patch.
+
+You can also get
+@uref{http://lilypond.org/lilypond/cygwin/i386-gnu-linux-x-i686-pc-cygwin,
+precompiled binaries for GNU/Linux ix68}.
@subsection Compiling on Windows
-Compiling on Windows should be possible, but how should we now? If you
-have any experiences you want to share, please do so at
-@uref{http://lilypond.org/wiki?CompilingOnWindows,Compiling on Windows}.
-Or write to one of the mailing lists.
+Compiling on Windows should be possible, but how should we know? If
+you have any experiences you want to share, please do so at
+@uref{http://lilypond.org/wiki?CompilingOnWindows,Compiling on
+Windows}. Or write to one of the mailing lists.
@section Windows installation specifics
Installing LilyPond on Windows is similar to a unix installation, but
-needs a number of extra tricks. All code for these tricks can be found
-in the source package directory @file{Documentation/windows}.
-
-@table @asis
-@item @var{guile-1.4-gnu-windows.patch}
-You may (Cygwin gets better every day) need this patch to compile GUILE.
-@item @var{cygwin-installer.patch}
-Apply this patch to the @file{setup} directory of
-@file{cygwin-apps/setup}, to get the LilyPond installer.
-
-Compiling @file{setup.exe} has been complicated a bit with the
-introduction of the bzip2 feature. Here's how I did it:
-@ignore
-old setup
+needs a number of extra tricks. All code for these tricks can be
+found in LilyPond's mknetrel build script in the source package
+directory @file{cygwin/mknetrel}.
+
+
+@section The LilyPond installer
+
+The LilyPond installer will probably be dropped real soon now. It's a
+patched version of the Cygwin installer. Get it from:
+
@quotation
@example
- mkdir cygwin-20020218 && cd cygwin-20020218
- export CVSROOT=:pserver:anoncvs@@anoncvs.cygnus.com:/cvs/src
- touch $HOME/.cvspass
- cvs login
- cvs -z3 co -D20020218 winsup
- cd src/winsup/cinstall
- patch < $HOME/usr/src/lilypond/Documentation/windows/cygwin-installer.patch
- (cd ../bz2lib; ./configure; make)
- ./configure
- CYGWIN=$HOME/usr/src/cygwin/cygwin-1.3.6
- cp $HOME/usr/src/lilypond/Documentation/windows/LilyPond.ico .
- make w32api_lib=$CYGWIN/usr/lib/w32api \
- CXX="g++ -L$CYGWIN/usr/lib/mingw"
- cp -pv setup.exe $CYGWIN/dist/cygwin-1.3.6/new-setup.exe
- strip $CYGWIN/dist/cygwin-1.3.6/new-setup.exe
+ cvs -d:pserver:anoncvs@@sources.redhat.com:/cvs/cygwin-apps co setup
@end example
-@end ignore
+@end quotation
+
+and apply @uref{http://lilypond.org/cygwin/cygwin-installer.patch,this patch}.
+
+Here's how I did it:
@quotation
@example
- CYGWIN=$HOME/usr/src/cygwin/cygwin-1.3.10 # where your cygwin lives
+ CYGWIN=$HOME/cygwin # where your cygwin lives
cd $CYGWIN
wget ftp://ftp.sf.net/pub/sourceforge/mingw/gcc-2.95.3-20010828.tar.gz
wget ftp://ftp.sf.net/pub/sourceforge/mingw/w32api-1.4.tar.gz
cvs login
cvs -z3 -r setup-200206 setup
cd setup
- patch < $HOME/cvs/lilypond/Documentation/windows/cygwin-installer.patch
+ patch < $HOME/cvs/savannah/lilypond/Documentation/windows/cygwin-installer.patch
cp $HOME/cvs/lilypond/Documentation/windows/LilyPond.ico .
CPPFLAGS="-I$CYGWIN/usr/include/mingw \
-I$CYGWIN/usr/mingw/mingw32/include \
strip $CYGWIN/dist/cygwin-1.3.10/new-setup.exe
@end example
@end quotation
-@item @var{--prefix=/usr/lilypond-x.y.x}
-The standard binary installation installs LilyPond into its own prefix.
-We think it's silly, but do this is on special request of Windows users.
-@item @file{fix-suffixes.sh}
-Add @file{.exe} to binary executables.
-@item @file{/etc/postinstall/}
-A post installation script that updates a symlink.
-@item @file{/etc/profile.d/}
-A number of login profile scripts set environment vars, every time you
-start the LilyPond/Cygwin shell (or Bash, for that matter).
-@end table
-
-These scripts and tricks are known to work, but may be incomplete. If
-you find a bug, please send us your fix.
-
-Windows users have indicated that a DOS style login (as supposed to the
-LilyPond/Cygwin shell), would be useful. We don't enjoy DOS scripting,
-and think users should try the bash shell, which is better suited for
-typing in commands. It really helps a lot and pays off to read some
-introduction to this Bash shell. However, if you have written useful
-DOS login scripts, please send us your code.
@chapter WINDOWS - Installing GNU LilyPond on Windows
-This document explains how to install the binary release for windows on
-a Microsoft Windows 95, 98, NT or 2000 machine. Please follow the
-instructions carefully. If it doesn't work for you, please send a
-bugreport, following the guidelines in the section on bugreports below.
+This document explains how to install the binary release for windows
+on a Microsoft Windows 95, 98, ME, NT, 2000 or XP machine. Please
+follow the instructions carefully. If it doesn't work for you, please
+send a bugreport, following the guidelines in the section on
+bugreports below.
@section Windows binary setup
Do not change the default install directory @file{c:/cygwin}.
This installs LilyPond, and Cygwin, GUILE, Python, teTeX (MikTeX is not
-supported) and GSView. If you already have some of that software under
+supported). If you already have some of that software under
@file{c:/cygwin}, then don't worry: nothing will be installed twice.
If you want to install any of this software by hand, do this
@strong{before} you run @file{setup.exe}, otherwise your LilyPond setup
may not work.
+
+@subsection Additional software
+
+If you install the Cygwin's XFree86 X11 window system, tetex-x11 and
+ghostscript-x11 packages too, you can view the @code{dvi} output doing
+@code{xdvi test.dvi}.
+
+LilyPond needs a PostScript/PDF viewer to be really useful. At this
+time (Sun Aug 11 2002), such software is not available in Cygwin, so
+you must use native Windows software instead.
+
+@table @samp
+@item Ghostview.
+
+You can use GSView-2.6. This old package has two advantages. It has
+gsview and ghostscript bundeled, and it doesn't popup @emph{Register
+Now|Cancel} windows all the time.
+
+Click @uref{ftp://ftp.cs.wisc.edu/ghost/ghostgum/gsv26w32.exe,here} to
+install GSView-2.6 (GhostView for Windows), or visit
+@uref{ftp://ftp.cs.wisc.edu/ghost/ghostgum,ftp.cs.wisc.edu}.
+
+@c check/update versions
+You can also use the newer versions GSView-3.6 and GhostScript-6.50,
+which can also display PDFs. You get annoying @emph{Register
+Now|Cancel} popups, though.
+
+Click @uref{ftp://ftp.cs.wisc.edu/ghost/ghostgum/gsv36w32.exe,here} for
+GSview and
+Click @uref{ftp://mirror.cs.wisc.edu/pub/mirrors/ghost/AFPL/gs650/gs650w32.exe
+,here} for GhostScript.
+@uref{ftp://ftp.cs.wisc.edu/ghost/ghostgum,ftp.cs.wisc.edu}.
+or visit the
+@uref{http://www.cs.wisc.edu/~ghost/,Ghostscript, Ghostview and GSview site}.
+@end table
+
+
@section Testing LilyPond
Open a LilyPond shell (To open a a lilypond shell, click the "GNU
-LilyPond" icon), and type
+LilyPond" or "Cygwin" icon), and type
@quotation
@example
@end example
@end quotation
-You can now view the file using the following command
+If you install the Cygwin's XFree86 X11 window system, tetex-x11 and
+ghostscript-x11 packages too, you can view the @code{dvi} output doing
+@code{xdvi test.dvi}. If you have installed a PostScript/PDF viewer,
+such as @code{GSView} from @uref{http://www.cs.wisc.edu/~ghost},
+viewing the PS file can be done with:
@quotation
@example
python --version
lilypond --version
ly2dvi --version
- gswin32c --version
@end example
@end quotation
@item If ly2dvi fails, then please run it as follows and include the
@uref{http://lilypond.org/wiki/?TroubleshootingWindows} for more
instructions on how to make a bug report.
-@ignore
-@subsection Additional software
-
-LilyPond needs a number of software packages to be really useful. These
-are included in the binary setup program (see above).
-
-If you choose to install this additional software yourself, make sure
-you install LilyPond last, otherwise the LilyPond setup will be broken.
-Also note that this means that you will probably need to fix some PATH
-and TEX environment variables yourself. If you think you can handle
-that, you may do so, but don't complain if it doesn't work.
-
-These software packages are included in the LilyPond installation:
-
-@table @asis
-@item A full TeX installation.
-As of LilyPond versions 1.4.11 (and 1.5.29), only Cygwin's teTeX
-installation is supported (packages tetex-beta and texmf-base). It is
-part of Cygwin and much more robust for use with LilyPond than MiKTeX.
-See @file{/usr/doc/Cygwin/tetex-beta-20001218.README} and
-@file{/usr/doc/Cygwin/texmf-20000804-2.README} for details.
-
-@item Ghostview.
-
-You can use GSView-2.6. This old package has two advantages. It has
-gsview and ghostscript bundeled, and it doesn't popup @emph{Register
-Now|Cancel} windows all the time. It doesn't work together with Yap to
-display PostScript specials.
-
-Click @uref{ftp://ftp.cs.wisc.edu/ghost/ghostgum/gsv26w32.exe,here} to
-install GSView-2.6 (GhostView for Windows), or visit
-@uref{ftp://ftp.cs.wisc.edu/ghost/ghostgum,ftp.cs.wisc.edu}.
-
-You can also use the newer versions GSView-3.6 and GhostScript-6.50 If
-you install both these packages, Yap will display PostScript specials.
-You get annoying @emph{Register Now|Cancel} popups, though.
-
-Click @uref{ftp://ftp.cs.wisc.edu/ghost/ghostgum/gsv36w32.exe,here} for
-GSview and
-Click @uref{ftp://mirror.cs.wisc.edu/pub/mirrors/ghost/AFPL/gs650/gs650w32.exe
-,here} for GhostScript.
-@uref{ftp://ftp.cs.wisc.edu/ghost/ghostgum,ftp.cs.wisc.edu}.
-or visit the
-@uref{http://www.cs.wisc.edu/~ghost/,Ghostscript, Ghostview and GSview site}.
-@end table
+@ignore
[TODO:
* emacs-mode installation, figure out and describe proper
emacs-on-cygwin setup.
-
]
- guile -v
- Guile 1.4.1
-
- guile -e %load-path
- ERROR: Wrong type to apply: ("/usr/share/guile/site" /usr/share/guile/1.4.1")
-
-
-
-Mats?
Let's take this step by step.
]
@end ignore
-
-@ignore
-@c irrelevant.
-
-If you want to install more of cygwnTo expand on this minimal set,
-@section If you already have MikTeX, GSView or
-
-If you already have cygwin installed, don't worry: nothing will be
-installed twice. To expand on this minimal set, click
-@uref{http://sources.redhat.com/cygwin/setup.exe,here}, or visit a
-Cygwin @uref{http://sources.redhat.com/cygwin/mirrors.html,mirror site}.
-
-
-This will install the minimal set of cygwin tools needed to run
-LilyPond. Make sure to install in the default place, @file{c:/cygwin},
-and install everything.
-@end ignore
------------------------------------------
LilyPond - The GNU music typesetter.
+To get started, visit:
+ http://www.lilypond.org/Documentation/windows/out-www/installing.html
+
+If you encounter any problems, visit:
+ http://www.lilypond.org/wiki?TroubleshootingWindows
+
+When it all works, head straight to the tutorial:
+ http://www.lilypond.org/Documentation/user/out-www/lilypond/Tutorial.html
+
+
Runtime requirements:
cygwin-1.3.10 or newer
libguile14
+ bash
+ libiconv2
+ libintl2
+ libkpathsea3
+ python
+ tetex-bin
+ tetex-tiny or tetex-base
+
+Suggested:
+ XFree86-serv
+ emacs or vim
+ ghostscript-x11
+ rxvt
+ tetex-x11
+ and, in anticipation of a PostScript viewer for Cygwin, a native
+ Windows PostScript viewer such as GSView from
+ http://www.cs.wisc.edu/~ghost
Build requirements:
cygwin-1.3.10 or newer
binutils-20011102 or newer
gcc-2.95.3-5 or newer
bison-1.35 or newer
+ guile-devel-1.5.6-5 or newer
+ fileutils
flex-2.5.4 or newer
+ libguile14-1.5.6-5 or newer
+ libkpathsea3-20020530-2 or newer
python-2.2 or newer
- texinfo-4.2 or newer
sed-3.02 or newer
- fileutils
sh-utils
- tetex-beta
- texmf-tiny
- etc.
- libguile14-dev
+ tetex-devel-20020530-2 or newer
+ texinfo-4.2 or newer
+
+Website/documentation build requirements (lilypond-doc package):
+ tetex-bin
+ tetex-tiny or tetex-base
+ ghostscript or ghostscript-x11
+
+ mftrace, http://www.cs.uu.nl/people/hanwen/mftrace
+ autotrace, http://autotrace.sourceforge.net
+ netpbm, http://netpbm.sourceforge.net
+ t1utils, http://www.lcdf.org/~eddietwo/type/
+Recommended website/documentation build requirements:
+ pfaedit 020215 or newer, http://pfaedit.sourceforge.net
Canonical homepage:
http://www.lilypond.org/development
Build instructions:
- unpack lilypond-1.5.64-1-src.tar.bz2
- if you use setup to install this src package, it will be
- unpacked under /usr/src automatically
- cd /usr/src
- DISTDIR=/usr/src ./lilypond-1.5.64-1.sh
+ # Unpack lilypond-1.5.72-1-src.tar.bz2 in /usr/src
+
+ cd /usr/src
+ tar xjf lilypond-1.5.72-1-src.tar.bz2
+ # (or, if you use setup to install this src package, it will be
+ # unpacked under /usr/src automatically)
+
+ # Get mknetrel from:
+ cvs -d:pserver:anoncvs@sources.redhat.com:/cvs/cygwin-apps co mknetrel
+
+ # Copy the extra mknetrel script for LilyPond to mknetrel:
+ cp lilypond-1.5.72-1/cygwin/mknetrel mknetrel/extra/lilypond
+
+ # Build the package:
+
+ ./mknetrel/bin/mknetrel lilypond
This will create:
- $DISTDIR/lilypond/lilypond-1.5.64-1-orig.tar.bz2
- $DISTDIR/lilypond/lilypond-1.5.64-1-src.tar.bz2
- $DISTDIR/lilypond/lilypond-1.5.64-1.tar.bz2
- $DISTDIR/lilypond/lilypond-doc/lilypond-doc-1.5.64-1.tar.bz2
+
+This will create:
+ /usr/src/uploads/lilypond-1.5.72-1-src.tar.bz2
+ /usr/src/uploads/lilypond-1.5.72-1.tar.bz2
+ /usr/src/uploads/lilypond-doc/lilypond-doc-1.5.72-1.tar.bz2
------------------
Port notes:
- These packages were built on GNU/Linux using cross building and
- packaging scripts:
-
- http://lilypond.org/cygwin/cygwin-cross-1.3.10.2.tar.gz
+ These packages were built on GNU/Linux using mknetrel.
Jan Nieuwenhuizen
janneke@gnu.org
Cygwin port maintained by: Jan Nieuwenhuizen <janneke@gnu.org>
+
+------------------
+
+Please send questions or comments on the LilyPond Cygwin package or
+installation to the Cygwin mailing list at: cygwin@cygwin.com.
+However, if you're having problems related to LilyPond, please write
+to lilypond-user@gnu.org. Please do not email the authors directly.