[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: macOS 64-bit

From: Daniel Johnson
Subject: Re: macOS 64-bit
Date: Fri, 17 May 2019 15:37:16 -0400
User-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:60.0) Gecko/20100101 Thunderbird/60.6.1

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:

reply via email to

[Prev in Thread] Current Thread [Next in Thread]