X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=INSTALL.txt;h=afe6857fac1405f8b029ccb0deb64cc9de8b1f45;hb=5ca271301d3af557f4720223736dc2d7b981c12b;hp=966420ae5a2d75bbb27bd6c5e85f54ff9b87f45a;hpb=711bbb9b9608ccd3ef2e876ab0c13af181fde283;p=lilypond.git diff --git a/INSTALL.txt b/INSTALL.txt index 966420ae5a..afe6857fac 100644 --- a/INSTALL.txt +++ b/INSTALL.txt @@ -1,396 +1,574 @@ +Table of Contents +***************** -INSTALL(1) LilyPond documentation INSTALL(1) -NAME - INSTALL - installing GNU LilyPond -DESCRIPTION - This page documents installation and compilation of GNU - LilyPond +INSTALL - compiling and installing GNU LilyPond + Downloading + Source code + Precompiled binaries + Upgrading + Requirements + Compilation + Running requirements + Website requirements + Building LilyPond + Configuring for multiple platforms + Emacs mode + Compiling for distributions + Red Hat Linux + LinuxPPC + SuSE + Slackware + Mandrake + Debian GNU/Linux + Problems + FLex-2.5.4a and gcc-3.0 + Python-2.1[.1] + Linux-2.4.0, Guile-1.4 -with-threads + NetBSD + Solaris: + AIX -ABSTRACT - You do something which looks remotely like - configure - make - make install +INSTALL - compiling and installing GNU LilyPond +*********************************************** - The detailed instructions follow here. + This document describes how to build LilyPond on Unix platforms. It +is also known to run and compile on Windows NT/95/98 as well. More +information on this topic can be found at the LilyPond on Windows page +(http://www.lilypond.org/gnu-windows/). -PREREQUISITES - For compilation you need. +Downloading +=========== - o A GNU system: GNU LilyPond is known to run on these - GNU systems: Linux (PPC, intel), FreeBSD, AIX, - NeXTStep, Digital Unix and Solaris. + Even numbered versions are `stable'. The webpages for the stable +version (1.2) reside on the GNU servers +(http://www.gnu.org/software/lilypond). Big enhancements go into the +latest odd numbered version (1.3), whose webpages are on the lilypond +site (http://www.lilypond.org/). - If you have the Cygnus WINDOWS32 port of the GNU - utils, it will even work in Windows NT/95, but we - don't promise to support it. +Source code +----------- - o GNU C++ v2.7 or better, with libg++ installed. - Version 2.7.2 or better recommended. + If you want to compile LilyPond from source, download here: + * Download development releases from + `ftp://ftp.cs.uu.nl/pub/GNU/LilyPond/' by FTP and + `http://ftp.cs.uu.nl/pub/GNU/LilyPond/', by HTTP. - o GNU make. + * `ftp://sca.uwaterloo.ca/pub/' by FTP (Canadian mirror) - o Flex (2.5.1 or better). + * at `lilypond.org' `ftp://ftp.lilypond.org/pub/LilyPond/' by FTP and + `http://www.lilypond.org/ftp/' by HTTP. - o Bison. (Version 1.25 or better) + Of course, if your platform supports LilyPond, such as Debian +GNU/Linux, FreeBSD, OpenBSD or NetBSD, you're encouraged to use the +native build from source drill. -RUNNING - GNU LilyPond does use a lot of resources. For operation - you need the following: + For Red Hat Linux and SuSE Linux, `.spec' files are included in the +tarball; see instructions below. - o TeX +Precompiled binaries +-------------------- - o A PostScript printer and/or viewer (such as - Ghostscript) is strongly recommended. Xdvi will show - all embedded PostScript too if you have Ghostscript - installed. + If you want to track bleeding edge development, try: -RECOMMENDED - Although not strictly necessary, these are recommended to - have. + * Debian GNU/Linux + (ftp://ftp.debian.org/debian/pool/main/l/lilypond/) usually has + the latest binaries for the most useful stable and development + versions, while - o Perl-5. Most documentation was created with the - perl's Plain Old Documentation. (I use 5.003) + * Mandrake Cooker + (http://rpmfind.net/linux/mandrake/cooker/contrib/RPMS/) also + provides fairly recent versions. + Binaries are made available for other popular platforms, but as we +need to compile them ourselves, they are not updated for every version +released. + * Red Hat i386 + (ftp://ftp.cs.uu.nl/pub/GNU/LilyPond/binaries/RedHat/RPMS/) + * SuSE (ftp://ftp.lilypond.org/pub/LilyPond/binaries/SuSE) -28/Jan/98 LilyPond 0.1.46 1 + * LinuxPPC (ftp://ftp.lilypond.org/pub/LilyPond/binaries/linuxppc/) + * Windows (http://www.lilypond.org/gnu-windows/) +Upgrading +--------- + There are two options for upgrading sources. + * if you have an unpacked source tree of a previous version, you may + the patches. -INSTALL(1) LilyPond documentation INSTALL(1) + _If you upgrade by patching do remember to rerun autoconf after + applying the patch_. + * if you have the `.tar.gz' file of a previous release, you can use + xdelta (ftp://ftp.xcf.berkeley.edu/pub/xdelta/). This is much + safer than using patches, and is the recommended way. - o Python. Although perl is nice, python is better. We - will shift towards python for build scripts + The following command produces `lilypond-1.4.3.tar.gz' from + `lilypond-1.4.2.tar.gz' identical (up to compression dates) to the + .3 on the FTP site. + xdelta patch lilypond-1.4.2-1.4.3.xd lilypond-1.4.2.tar.gz - o GNU find +Requirements +============ - o A fast computer (a full page of music typically takes - 1 minute on my 486/133, using the --enable-checking - compile. It's lot slower than most MusiXTeX - preprocessors) +Compilation +----------- -CONFIGURING and COMPILING - to install GNU LilyPond, simply type: + You need the following packages to compile Lilypond. - configure - make install + * A reasonably new version of the GNU C++ compiler: EGCS 1.1, GCC + 2.95.2 or newer. Check out the gcc site + (ftp://ftp.gnu.org/gnu/gcc/). - This will install the following files: + * Python (version 1.5 or newer). Check out the python website + (http://www.python.org). - /usr/local/man/man1/mi2mu.1 - /usr/local/man/man1/convert-mudela.1 - /usr/local/man/man1/mudela-book.1 - /usr/local/man/man1/lilypond.1 - /usr/local/lib/libflower.{so,a} - /usr/local/bin/lilypond - /usr/local/bin/mi2mu - /usr/local/share/lilypond/* - /usr/lib/texmf/texmf/tex/lilypond/* + * GUILE (version 1.4 or newer). Check out the GUILE webpage + (http://www.gnu.org/software/guile/guile.html). Version 1.4 is + recommended for better performance. - The TeX include directory is detected dynamically, but it - can be adjusted with --enable-tex-prefix and --enable-tex- - dir. The above assumes that you are root and have the GNU - development tools, and your make is GNU make. If this is - not the case, you can adjust your environment variables to - your taste: + * GNU Make. Check out the GNU make FTP directory + (ftp://ftp.gnu.org/gnu/make/). - export CPPFLAGS="-I /home/me/my_include -DWEIRD_FOOBAR" - configure + * Flex (version 2.5.4a or newer). Check out the Flex webpage + (http://www.gnu.org/software/flex/). - CPPFLAGS are the preprocessor flags. + * Bison (version 1.25 or newer). Check out the bison webpage + (http://www.gnu.org/software/bison/) - the configure script is Cygnus configure, and it will - accept --help. If you are not root, you will probably have - to make it with + * TeX. - configure --prefix=/home/me_myself_and_I/ + TeX is used as an output backend. - In this case, you will have to set MFINPUTS, and TEXINPUTS - accordingly. + Also, TeX's libkpathsea is used to find the fonts (`.mf', `.afm', + `.tfm'). Make sure you have tetex 1.0 or newer (1.0.6 is known to + work). You may need to install a tetex-devel or tetex-dev package + too. - If you want to install GNU LilyPond in /usr/local, and - your TeX has no default hooks for local stuff (mine is - broken too), you can do: + * Texinfo (version 4.0 or newer). The documentation of lily is + written in texinfo. Check out the texinfo FTP directory + (ftp://ftp.gnu.org/gnu/texinfo/). - configure --prefix=/usr/local --enable-tex-prefix=/usr/lib/texmf + * The geometry package for LaTeX is needed to use ly2dvi. It is + available at the FTP directory for `geometry' + (ftp://ftp.ctan.org/tex-archive/macros/latex/contrib/supported/geometry). + This package is normally included with the TeX distribution. + * kpathsea, a library for searching (TeX) files. `kpathsea' is + usually included with your installation of TeX. You may need to + install a tetex-devel or tetex-dev package too. + In the very unlikely case that kpathsea is not available for your + platform (ie, you're not running GNU/Linux, Windows, or any recent + UNIX), you can compile LilyPond without kpathsea support. In that + case, you'll probably have to indicate where TeX's tfm files live. + Invoke configure something like: -28/Jan/98 LilyPond 0.1.46 2 + ./configure --without-kpathsea --enable-tfm-path=/usr/share/texmf/fonts/tfm/public/cm/:/usr/share/texmf/fonts/tfm/ams/symbols + * pktrace, [OPTIONAL], needed for generating PostScript Type1 fonts. + Get it from `http://www.cs.uu.nl/~hanwen/pktrace/'. You will + need to install some additional packages to get pktrace to work. +Running requirements +-------------------- + GNU LilyPond does use a lot of resources. For operation you need the +following software -INSTALL(1) LilyPond documentation INSTALL(1) + * TeX. + * Xdvi and Ghostscript - Since GNU LilyPond currently is beta, you are advised to - also use + * GUILE 1.3.4, or newer. Check out the GUILE webpage + (http://www.gnu.org/software/guile.html) - --enable-debugging - --enable-checking + For running LilyPond successfully you have to help TeX and MetaFont +find various files. The recommended way of doing so is adjusting the +environment variables in the start-up scripts of your shell. Appropriate +Csh and bourne sh scripts are left in +`buildscripts/out/lilypond-profile' and +`buildscripts/out/lilypond-login' after compilation. - other options include: + LilyPond is a big and slow program. A fast CPU and plenty of RAM is +recommended for comfortable use. - --enable-shared - Make a shared library (gnu/linux, solaris (?) only ) +Website requirements +-------------------- - --enable-printing - Enable debugging print routines (lilypond -d option) + The documentation comes in the form of a website. You can view this +website on the internet, but you can also build it locally. This process +requires a successful compile of lilypond. The website is built by +issuing - --enable-optimise - Set maximum optimisation: compile with -O2 + make web-doc - --enable-profiling - Compile with support for profiling + Building the website requires some additional tools: - --enable-tex-prefix - Set the directory where TeX and Metafont live + * xpmtoppm (from the netpbm package: the Portable Bitmap Utilities). + The original is at the netpbm FTP site + (ftp://ftp.x.org/contrib/utilities/netpbm-1mar1994.p1.tar.gz) - --enable-tex-dir - Set then directory TeX input is in (detected as a - subdir of tex-prefix) + * pnmtopng. The original is at in the pnmtopng FTP site + (ftp://swrinde.nde.swri.edu/pub/png/applications/pnmtopng-2.37.2.tar.gz). - --enable-mf-dir - Set the directory mf input is in (idem) + * texinfo (a development release) The documentation will build with + texinfo-4.0, but if you want split html pages, you're best off + using the lates pretest version from texinfo-4.0b + (ftp://texinfo.org/texinfo/pretests/texinfo-4.0b.tar.gz) or + texinfo-4.0b (ftp://alpha.gnu.org/gnu/texinfo-4.0b.tar.gz) - --enable-out-dir - Set the directory for machine generated output. +Building LilyPond +================== - All options are documented in the configure help The - option --enable-optimise is recommended for Real Life - usage. + to install GNU LilyPond, type: + gunzip -c lilypond-x.y.z | tar xf - + cd lilypond-x.y.z + ./configure # run with --help to see appropriate options + make + make install + sh buildscripts/clean-fonts.sh - If you do + If you are doing an upgrade, you should remove all `feta' `.pk' and +`.tfm' files. A script has been provided to do the work for you, see +`buildscripts/clean-fonts.sh'. - make all + If you are not root, you should choose a `--prefix' argument that +points into your home directory, eg. - everything will be compiled, but nothing will be - installed. The resulting binaries can be found in the - subdirectories out/ (which contain all files generated - during compilation). + ./configure --prefix=$HOME/usr - Building for multiple hosts + In this case, you have to insert the contents of +`buildscripts/out/lilypond-login' or +`buildscripts/out/lilypond-profile' into your start up scripts by hand. - LilyPond does not follow the GNU standards when it comes - to configuring and making Makefiles. In LilyPond, make - generates all output in output directories (called out/, - by default). You can have multiple compiles from the same - source-tree, by overriding the setting for the output - directory. +Configuring for multiple platforms +---------------------------------- + If you want to build multiple versions of LilyPond with different +configuration settings, you can use the `--enable-config=CONF' option +of configure. You should use `make conf=CONF' to generate the output +in `out-CONF'. Example: suppose I want to build with and without +profiling. Then I'd use the following for the normal build, + ./configure --prefix=~ --enable-checking + make + make install -28/Jan/98 LilyPond 0.1.46 3 + and for the profiling version, I specify a different configuration. + ./configure --prefix=~ --enable-profiling --enable-config=prof --disable-checking + make conf=prof + make conf=prof install +Emacs mode +========== + An Emacs mode for entering music and running LilyPond is included +with the source archive as `lilypond-mode.el' and +`lilypond-font-lock.el'. You should install these files somewhere in +your LOAD-PATH. If you have installed a precompiled LilyPond package, +these files can be found in `/usr/share/doc/lilypond-x.y.z/'. -INSTALL(1) LilyPond documentation INSTALL(1) + Add this to your `~/.emacs' or `~/.emacs.el', or install this file +in Emacs' `site-start.d': + ;;; lilypond-init.el --- Startup code for LilyPond mode + + (load-library "lilypond-mode.el") + (setq auto-mode-alist + (cons '("\\.ly$" . LilyPond-mode) auto-mode-alist)) + (add-hook 'LilyPond-mode-hook (lambda () (turn-on-font-lock))) + If you have the latest LilyPond-1.4.x Debian package, LilyPond-mode +is automatically loaded, you not even need to modify your `~/.emacs' +file. - Example: on my system, I do debugging and lots compiling. - For this I use the configuration as follows: +Compiling for distributions +=========================== - configure --prefix=~ --enable-debugging --enable-printing --enable-checking - make all +Red Hat Linux +------------- - and I want to do profiling. For that I use + Red Hat 7.0 i386 RPMS are available from +`ftp://ftp.cs.uu.nl/pub/GNU/LilyPond/binaries/'. - configure --prefix=~ --enable-debugging --disable-printing\ - --disable-checking --enable-profiling --enable-optimise\ - --enable-out-dir=out-profile + You can also compile them yourself. A spec file is in +`make/out/lilypond.redhat.spec'. This file is distributed along with +the sources. You can make the rpm by issuing - make OUTDIR_NAME=out-profile all + tar xfz lilypond-x.y.z.tar.gz + rpm -bb lilypond-x.y.z/make/out/lilypond.redhat.spec + rpm -i /usr/src/redhat/RPMS/i386/lilypond-x.y.z - These two commands build two entirely separate versions of - LilyPond. In Real Life, you would probably also want to - have two different prefixes. On my machine this is no - problem; I never do make install. My prefix dirs are - linked back to my source directory. + For running on a Red Hat system you need these packages: guile, +tetex, tetex-latex, tetex-dvips, libstdc++, python, ghostscript. -INSTALLING - If you have done a successful make, then a simple + For compilation on a Red Hat system you need these packages, in +addition to the those needed for running: glibc-devel, gcc-c++, +libstdc++-devel, guile-devel, flex, bison, texinfo, groff. - make install +LinuxPPC +-------- - should do the trick. + Some LinuxPPC RPMS should available from +`ftp://ftp.cs.uu.nl/pub/GNU/LilyPond/binaries/'. - If you are doing an upgrade, please remember to remove - obsolete .pk and .tfm files of the fonts. A script has - been provided to do the work, see bin/clean-fonts.sh. + A LinuxPPC RPM can be made using the `lilypond.redhat.spec' file. -CAVEATS - o The -O2 option to gcc triggers a gcc bug on DEC Alpha - in dstream.cc. You should turn off this flag for this - file. +SuSE +---- - o Perl5.003 and Perl5.004 use different syntax for - pod2html. + Some SUSE RPMS should available from +`ftp://ftp.lilypond.org/pub/LilyPond/binaries/SuSE'. + + You can also compile a RPM for SUSE yourself. A spec file is in +`make/out/lilypond.suse.spec', see the instructions for building the +Red Hat RPM. -EXAMPLE - This is what I type in my xterm: + You must have the following packages: guile tcsh tetex te_latex +te_kpath te_mpost libpng python gpp libgpp gettext autoconf netpbm +libnetpb gs_serv gs_lib gs_fonts guile - lilypond someinput.ly - tex someinput.tex - xdvi someinput& +Slackware +--------- - This is what the output looks like over here: + No precompiled packages for Slackware are available. + Problems have been reported with Slackware 7.0; apparently, it ships +with a faulty compiler. Do not compile LilyPond with -O2 on this +platform. +Mandrake +-------- + Some binaries are available at rpmfind.net. Refer to +`http://rpmfind.net/linux/mandrake/cooker/contrib/RPMS/'. + You can also compile a RPM for Mandrake yourself. A spec file is in +`make/out/lilypond.mandrake.spec', see the instructions for building +the Red Hat RPM. +Debian GNU/Linux +---------------- + A Debian package is also available. You may install it easily by +running `apt-get' as root: + apt-get install lilypond lilypond-doc + You can also compile the .deb for Debian yourself, do: + apt-get -b source lilypond -28/Jan/98 LilyPond 0.1.46 4 + If you're real impatient, you may even do: + cd lilypond-x.y.z # a previous version + uscan # download and build latest directly from upstream + Debian's TeX installation is a bit short on memory, you may want to +increase it like this: + --- texmf.cnf.orig Sun Dec 16 23:47:07 2001 + +++ texmf.cnf Sun Dec 16 23:46:34 2001 + @ -411,8 +411,8 @ + main_memory.context = 1500000 + main_memory.mpost = 1000000 + main_memory = 263000 % words of inimemory available; also applies to inimf&mp + -extra_mem_top = 0 % extra high memory for chars, tokens, etc. + -extra_mem_bot = 0 % extra low memory for boxes, glue, breakpoints, etc. + +extra_mem_top = 1000000 % extra high memory for chars, tokens, etc. + +extra_mem_bot = 1000000 % extra low memory for boxes, glue, breakpoints, etc. + + obj_tab_size.context = 300000 + + @ -430,7 +430,7 @ + % Max number of characters in all strings, including all error messages, + % help texts, font names, control sequences. These values apply to TeX and MP. + pool_size.context = 750000 + -pool_size = 125000 + +pool_size = 250000 + % Minimum pool space after TeX/MP's own strings; must be at least + % 25000 less than pool_size, but doesn't need to be nearly that large. + string_vacancies.context = 45000 + You could also export `extra_mem_top' and `extra_mem_bot' as +environment variables if you do not want to or cannot modify +`/etc/texmf/texmf.cnf'. + Alternatively, visit -INSTALL(1) LilyPond documentation INSTALL(1) + * http://packages.debian.org/lilypond + (http://packages.debian.org/lilypond) + * http://people.debian.org/~foka/lilypond/ + (http://people.debian.org/~foka/lilypond/) for latest + semi-unofficial build of LilyPond 1.4.2 for Debian 2.2 (potato) + users. The official stable Debian 2.2 is stuck with the old + LilyPond-1.3.24. Since LilyPond-1.4 has been released, the older + lilypond1.3 Debian package is now obsolete. - GNU LilyPond 0.0.78 #4/FlowerLib 1.1.24 #0 - Parsing ... [/home/hw/share/lilypond/init// - <..etc..> - init//performer.ly]]][input/kortjakje.ly] - Creating elements ...[8][16][24][25] - Preprocessing elements... - Calculating column positions ... [14][25] - Postprocessing elements... - TeX output to someinput.tex ... - Creating MIDI elements ...MIDI output to someinput.midi ... + Please contact Anthony Fok for more +information. - hw:~/musix/spacer$ xdvi someinput& - [1] 855 + The build scripts are in the subdirectory `debian/'; you can make +the .deb by doing, for example: - Check out the input files, some of them have comments - Please refer to the man page for more information. + $ su - root + # dpkg --purge lilypond lilypond1.3 + # exit + $ tar xzf lilypond-1.4.3.tar.gz + $ cd lilypond-1.4.3 + $ dch -p -v 1.4.3-0.local.1 "Local build." + $ debuild -B + $ su - root + # dpkg -i ../lilypond_1.4.3*.deb + # exit + $ -REDHAT LINUX - RedHat Linux users should be able to get a RPM. A spec - file is in make/out/lilypond.spec. You should be able to - create an rpm as a normal user. Be sure you have a - ~/.rpmrc, and edit the RPM-dir in Variables.make. (If you - create the RPM as a normal user the permissions will not - be set correctly, unfortunately) + Use command `debuild' instead of `debuild -B' if you have a very +fast machine and want to build the HTML, PS and DVI documentation too. -DEBIAN GNU/LINUX - A Debian package is also available; contact Anthony Fok - . The build scripts are in the - subdirectory debian/ + For compilation on a Debian GNU/Linux system you need these packages, +in addition to the those needed for running: -WINDOWS NT/95 - So, you're stuck with Windows, eh? Well, don't worry, you - just need (to get) Cygnus' windows32 port of gnu - development stuff; have a look at - http://www.cygnus.com/gnu-win32. + * g++, cpp, libc6-dev, libstdc++-dev - To make GNU LilyPond under, brr, aargh, shudder... - windows32, well, simply type: + * libguile-dev - bash configure - make + * make, m4, flex, bison - Note If you rely on broken DOS/Windows tools such as - pkzip/WinZIP to unpack the distribution, make sure the - entire source tree is unpacked correctly, in particular - the empty out directories (flower/out, lib/out et. al.) + * gettext -MUSIXTEX - Previous versions (before 0.1.39) used fonts from the TeX - macro package "MusixTeX". You can still use these, but - they are not supported. Since LilyPond's Feta font is - much prettier, you'd be seriously misguided if you used - them, but anyway, here are the installation instructions - for those deprecated fonts. + * groff, texinfo + * tetex-base, tetex-bin, tetex-extra, libkpathsea-dev or tetex-dev + * dpkg-dev, debhelper, fakeroot -28/Jan/98 LilyPond 0.1.46 5 + * gs, netpbm + * pnmtopng (only in Debian 2.2; pnmtopng has been merged with netpbm + in Debian testing/unstable.) + Most of these are listed on the `Build-Depends' line in the +`debian/control' file. To ensure the creation of the lilypond deb is +trouble-free, we recommend that you first install the following packages +by running \`apt-get' as root before building the package: + For Debian 2.2: + apt-get install task-debian-devel task-c++-dev \ + python-base libguile6-dev tetex-bin tetex-dev \ + tetex-extra flex bison texinfo groff gs \ + netpbm pnmtopng m4 gettext -INSTALL(1) LilyPond documentation INSTALL(1) + For Debian in development ("unstable", the future 2.3 or 3.0): + apt-get install binutils cpp gcc libc6-dev \ + g++ libstdc++2.10-dev \ + python-base libguile-dev tetex-bin libkpathsea-dev \ + tetex-extra flex bison texinfo groff gs \ + netpbm m4 gettext - [obsolete] I use the MusixTeX fonts those found in - MusixTeX T.73. Beware, the clef symbol seems to have - changed its position in some versions, (notably Egler's, - a.k.a. OpusTeX). The MusixTeX fonts are included in - MusixTeX (T73 or better), which can be had from any CTAN - site, e.g. at + And, just so that old fonts from previous versions of LilyPond won't +interfere with your build, you may want to do this before the build too: - ftp://ftp.shsu.edu/tex-archive/macros/musixtex/taupin + dpkg --purge lilypond lilypond1.3 - ftp://ftp.tex.ac.uk/tex-archive/macros/musixtex/taupin +Problems +======== - ftp://ftp.dante.de/tex-archive/macros/musixtex/taupin + For help and questions use . Please consult +the FAQ before mailing your problems. If you find bugs, please send +bug reports to . - You only need the contents of the mf/ subdirectory of the - package. The primary site of the Taupin version is - ftp://hprib.lps.u-psud.fr/pub/music_zips/musixtex.zip + Bugs that are not fault of LilyPond are documented here. - Install the musixtex fonts in a directory which TeX and MF - knows (if you are root, look for a directory which - contains the directories with AMS and CM source (*.mf) - files. Create a subdir lilypond or musixtex and copy the - fonts into that). Do not forget to rehash TeX (if - applicable) +FLex-2.5.4a and gcc-3.0 +----------------------- - Example: my fonts are in - /usr/local/lib/texfonts/musixtex/, and I have a symlink - pointing to that in - /usr/lib/texmf/texmf/fonts/source/public/. After I copied - the files, I ran "texhash" + Flex 2.5.4a does not produce g++-3.0 compliant C++ code. To compile +LilyPond with gcc-3.0 you may do: - Andreas Egler's version of MusixTeX, now called OpusTeX, - will also work. Andreas moved some characters around in - the fonts, so you have to edit the definitions in - tex/eglerdefs.tex. + CC=gcc-3.0 CXX=g++-3.0 ./configure --enable-config=gcc-3.0 + make conf=gcc-3.0 -C lily out-gcc-3.0/lexer.cc + patch -p1 < lexer-gcc-3.0.patch + make conf=gcc-3.0 -C lily -AUTHORS - Han-Wen Nienhuys + Note that this is fixed in Debian/unstable for flex >= 2.5.4a-13. - Jan Nieuwenhuizen +Python-2.1[.1] +-------------- - Have fun! + Regular expressions are broken in Python 2.1.[.1], either upgrade or +downgrade python. +Linux-2.4.0, Guile-1.4 -with-threads +------------------------------------ + There's a bug in certain kernels around version 2.4.0, that is +triggered when using Guile 1.4 compiled with pthreads. You'll see +random segmentation fault crashes of LilyPond. Upgrade to a newer +version of Linux. If you can't do that, you may try to recompiling +Guile without threads (YMMV): + guile-1.4$ ./configure --without-threads; make all install +NetBSD +------ + * The flex precompiled in NetBSD-1.4.2 is broken. Download + flex-2.5.4a, build, install. + * The configuration of Gcc (egcs-2.91.60 19981201 (egcs-1.1.1 + release)) does not include `/usr/pkg' paths. Configure using: + CFLAGS='-I /usr/pkg/include' LDFLAGS='-L/usr/pkg/lib' ./configure +Solaris: +-------- + * Sparc64/Solaris 2.6, GNU make-3.77 + GNU make-3.77 is buggy on this platform, upgrade to 3.78.1 or + newer. + * Sparc64/Solaris 2.6, ld + Not yet resolved. +AIX +--- + * AIX 4.3 ld -28/Jan/98 LilyPond 0.1.46 6 + The following is from the gcc install/SPECIFIC file. + Some versions of the AIX binder (linker) can fail with a + relocation overflow severe error when the -bbigtoc option + is used to link GCC-produced object files into an + executable that overflows the TOC. A fix for APAR IX75823 + (OVERFLOW DURING LINK WHEN USING GCC AND -BBIGTOC) is + available from IBM Customer Support and from its + 27service.boulder.ibm.com website as PTF U455193. + + Binutils does not support AIX 4.3 (at least through release + 2.9). GNU as and GNU ld will not work properly and one + should not configure GCC to use those GNU utilities. Use + the native AIX tools which do interoperate with GCC. + + add -Wl,-bbigtoc to USER_LDFLAGS, ie: + LDFLAGS='-Wl,-bbigtoc' ./configure