Here is my summary of what has been discussed regarding MacOS builds
over the last couple months. I feel like we are largely rehashing the
same questions/answers.
1. Lilypond’s current build system is GUB. GUB is a cross-platform
all-in-one build system which produces binaries for Linux, Windows, BSD,
and MacOS.
2. MacOS Mojave periodically issues warnings that 32-bit applications
will not run on the next version of MacOS.
3. Precompiled Lilypond binaries for MacOS are only available in 32-bit
versions.
4. The above is true because in order to create a version of Lilypond
that has GUI aspects and/or can be invoked from the Finder, it must be
compiled against the XCode SDK.
a. Older, 32-bit only versions of the SDK are GPL3-compatible; this
is why 32-bit MacOS binaries have been available up to this point.
b. Versions of the SDK with 64-bit support are not license-compatible
with GPL3, which is the license Lilypond uses.
c. These more modern versions of the SDK require compilation on Apple
hardware.
d. Therefore, 64-bit versions of Lilypond for MacOS cannot be
compiled with GUI/Darwin support.
5. Lilypond must be compiled with GCC rather than clang, due to
differences in how the C++ standard is interpreted regarding templates.
There does not seem to be a reasonable solution to this issue.
6. MacOS provides a CLI binary called gcc, but it is just a thin wrapper
around clang and therefore cannot be used.
7. Lilypond performs best (and most stably) when compiled against Guile
1.8. Current versions of Guile are 2.x; this is the version shipped by
default by pretty much every package manager for MacOS.
8. There are two major CLI package managers for MacOS, which are not
interchangeable with each other: MacPorts and Homebrew. I am ignoring
Fink for now. Both MacPorts and Homebrew supply GCC binaries.
9. Homebrew has dropped TeXLive support entirely. Lilypond requires TeX
and supporting libraries in order to build. You can, however, install
MacTeX using homebrew casks. With some supplemental software you can
make Lilypond build using MacTeX.
For the record, I have successfully built 64-bit Lilypond on a Homebrew
base. In addition to adding a few contributed taps, I had to manually
download, build and install the following:
- TeX Gyre font
- Flex 2.5.37
- Extractpdfmark
- Lilypond itself
I did not attempt to build documentation.
Full details here:
http://danieljohnson.name/blog/installing-lilypond-on-macos
_______________________________________________
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel