On Fri, Jan 10, 2020 at 2:29 AM Jonas Hahnfeld <hah...@hahnjo.de> wrote:
> Am Freitag, den 10.01.2020, 01:07 -0500 schrieb Marnen Laibow-Koser: > > > > > > On Fri, Jan 10, 2020 at 1:03 AM Werner LEMBERG <w...@gnu.org> wrote: > > > > There is one lingering problem: when LilyPond calls Guile, Guile is > > > > not finding the library files specified in load-extension > > > > expressions, even though they *should* be in the right place. > > > > Before I go too crazy searching, does anyone know what controls this > > > > path choice? I'm assuming it may be a compilation option for the > > > > LilyPond binary, but I really don't know. > > > > > > Here's a link to the script MacPorts is using to call lilypond. > > > > > > > https://github.com/macports/macports-ports/blob/master/textproc/lilypond-devel/files/lilypond.in > > > > > > It seems you have to set LDTL_LIBRARY_PATH. > > > > I saw that, of course, but I’m not sure what that variable even is. In > particular, I have no reason to believe that it affects Guile’s load > path...but I’ll try it and see. Thanks for the reminder. > > > > I *think* that the Guile load path is the last issue standing between me > and a self-contained 64-bit Mac .app bundle. Everything else appears to be > working. > > From my experiments, this is where LilyPond's relocation kicks in. I > think you have to provide .reloc files in etc/relocation, that's also > what GUB does. Yup, I copied those over from the GUB-built bundle. I'm not quite sure how they work, but it looks like the LilyPond executable looks for them on startup, right? Unfortunately, I don't quite see how to set the right path in those: an .app bundle is movable, and while the Mac OS path resolver has a special notation (@executable_path) for the path of the executable within that bundle, it doesn't seem to put it into an environment variable in any useful way. I tried @executable_path in those pathnames, but it didn't *seem* to work; OTOH, it changed enough behavior that further research may be worth while. I should say here that I don't know that much about Mac application packaging; I'm doing this mostly because no one else seemed interested to do it and I really want a 64-bit build. > It allows to dynamically set environment variables, in > this case GUILE_LOAD_PATH. > To point you to the next error in advance: You have to do the same for > Fontconfig or it can't find its config file 😉 > Ah, thanks for the warning. At this point I think it's all about path-munging. > > Hope this helps, > Jonas > Best, -- Marnen Laibow-Koser mar...@marnen.org http://www.marnen.org