1

私の.appパッケージは次のようになります。

MyApp.app/
    Contents/
        MacOS/
            MyApp
            libA.dylib
            libB.dylib
            libC.dylib
        PlugIns/
            PlugIn1.bundle/
                ...bundle contents
            PlugIn2.bundle/
                ...bundle contents

PlugIn1.bundleとPlugIn2.bundleはどちらも、libA.dylib、libB.dylib、およびlibC.dylibに対してリンクされています。3つのdylibのインストール名は@loader_path/libName.dylibです。ただし、バンドルはlibA.dylib、libB.dylib、またはlibC.dylibを見つけることができません。メインの実行可能ファイルに対してリンクするように-bundle_loaderフラグを設定しようとしましたが、それは役に立ちませんでした。バンドルが.appパッケージのMacOSフォルダーからdylibを検索し、それらをバンドルにコピーする必要がないようにすることは可能ですか?

4

1 に答える 1

2

これを機能させるには、インストール名を@ executeable_path/libName.dylibに変更する必要がありました。

于 2010-03-17T18:43:50.273 に答える