Mac Imprudence Status Update (March 15)

Unfortunately, some difficulties have come up with the Mac version, so I won’t be able to release it this weekend as I had hoped.

I packaged up the current build (Intel only, no sound effects) and had some testers try it on Friday. But, they all reported that it wouldn’t run, giving an error that it couldn’t find certain libraries (openal, alut…) — even though the libraries were included in the package. D’oh!

After quite a lot of head scratching, I found out that executables and dynamic libraries on Mac have a weird quirk: they remember the full path of other libraries they depend on, not just the name (as Linux does). So, when the testers tried to run Imprudence, it would try to find “/usr/local/lib/libopenal.0.dylib”, which exists on my computer, but not theirs. Drat!

The good news is that there’s a not-too-difficult way to change the stored path and make it relative to the executable. The bad news is I have to do it for every library that Imprudence depends on, and every library those libraries depend on, and so on. (It’s times like this when I sure appreciate the way GStreamer is split up into dozens of separate modules. It would be too easy to have to fix just one! Thanks, GStreamer!)

I’ve done some shell scripting to automate the worst of it, but there are still a few stray dependencies to deal with. I’m hoping to have something for you guys to download within the next day or two.

3 Responses to “Mac Imprudence Status Update (March 15)”

  1. Beginning Thursday

    Once again, I’m grateful for all your efforts with this and look forward to being able to try it out. Thank you!

  2. Hazel

    haven’t been around for a while…
    sounds great!
    I will have sound! yay!

  3. Gwyneth Llewelyn

    Don’t despair, Jacek, your efforts will be incredibly appreciated :)