problema de caminho dylib @executable_path em um pacote configurável de plug-in
Estou desenvolvendo umpacote de plug-indigamosMyPlugIn.bundle
para uma aplicaçãodigamosBigApp.app
. Este pacote requer um dylibdigamosMyPlugIn.bundle/Contents/Resources/library.dylib
. Realocei os caminhos para o library.dylib, como faria em um pacote simples de aplicativos:
$ otool -L MyPlugIn.bundle/Contents/MacOS/MyPlugIn
MyPlugIn.bundle/Contents/MacOS/MyPlugIn:
@executable_path/../Resources/library.dylib (compatibility version 0.0.0, current version 0.0.0)
[...]
$ otool -L MyPlugIn.bundle/Contents/Resources/library.dylib
MyPlugIn.bundle/Contents/Resources/library.dylib:
@executable_path/../Resources/library.dylib (compatibility version 0.0.0, current version 0.0.0)
[...]
Mas o BigApp.app falha ao carregar esse pacote e o Console.app do Mac OS X registra o seguinte:
19/01/10 15:42:59 BigApp[51516] Error loading /Library/Application Support/BigApp/Plug-Ins/MyPlugIn.bundle/Contents/MacOS/MyPlugIn: dlopen(/Library/Application Support/BigApp/Plug-Ins/MyPlugIn.bundle/Contents/MacOS/MyPlugIn, 262): Library not loaded: @executable_path/../Resources/library.dylib
Referenced from: /Library/Application Support/BigApp/Plug-Ins/MyPlugIn.bundle/Contents/MacOS/MyPlugIn
Reason: image not found
Parece que @executable_path não é substituído pelo caminho executável MyPlugIn.bundle, mas peloCaminho do executável BigApp.app.
QualquerGambiarra para isso, sem caminho absoluto e para que ele funcioneMac OS X 10.4 (Tiger)? Obrigado.