-
Notifications
You must be signed in to change notification settings - Fork 54
Description
On macOS (Apple Silicon), the bundled GrandOrgueTool does not start out of the box.
Running
/Applications/GrandOrgue.app/Contents/MacOS/GrandOrgueToolresults in:
dyld: Library not loaded: @rpath/libGrandOrgueCore.3.17.0.dylib
Reason: tried: 'GrandOrgue.app/Contents/Frameworks/../Frameworks/libGrandOrgueCore.3.17.0.dylib' (no such file)The file does exist in the bundle:
/Applications/GrandOrgue.app/Contents/Frameworks/libGrandOrgueCore.3.17.0.dylib
The reason seems to be an incorrect LC_RPATH in GrandOrgueTool:
LC_RPATH
path GrandOrgue.app/Contents/Frameworks/../Frameworks
This path is not anchored with @executable_path (or @loader_path), so dyld cannot resolve @rpath correctly when the tool is launched.
After replacing the RPATH with:
@executable_path/../Frameworks
the tool starts correctly.
Additionally, GrandOrgueTool is linked against Homebrew libraries
(/opt/homebrew/...) even though the same libraries are already bundled in
Contents/Frameworks, which makes the tool unexpectedly dependent on Homebrew.
Suggested fix:
When packaging the macOS app, set the RPATH of GrandOrgueTool to
@executable_path/../Frameworks and link it against the bundled libraries.
Environment:
- macOS Tahoe 26.2 (25C56): Apple Silicon (ARM)
- GrandOrgue: 3.17.0-1
- Installation: official macOS app bundle