私はいくつかの動的ライブラリ、つまりlibSDL、libSDL_ttfなどに依存するプログラム(具体的にはSO DevDays Countdown app challengeのエントリ)を持っています。私はこれらのライブラリをMacPorts経由で/opt/local/lib
の下にインストールしています。これらのライブラリはインストールされていない(インストールされているかもしれませんが、その場所にはありません)。依存ライブラリを使用してMac OS Xを配布するにはどうすればいいですか?
これらのライブラリがインストールされていない人でもすぐに使用できるようにプログラムを配布するにはどうすればよいですか?明らかに私は様々なファイルを配布する必要がありますが、これは不十分です。ダイナミックローダーはまだ私がインストールした場所にインストールされているライブラリを探します。ダイナミックローダーに実行可能ファイルのカレントディレクトリを見てもらう方法はありますか?やはり、この環境変数を変更する必要はありません(例:DYLD_LIBRARY_PATH
)。
それについて考えると、私は静的リンクを使って配布するつもりだと思います。とにかくダイナミックライブラリを配布しようとすると、それらのライブラリを使用する目的がいくつか失われるため、ダイナミックローダを扱う際の苦労を避けることもできます。 –
4.オプション2.を使用して、.appバンドル(.dmgファイル)内にフレームワークを置き、install_name_toolを使用して実行可能ファイルのパスを変更します。 install_name_toolの使用例をいくつか示します:http://qt-project.org/doc/qt-4.8/deployment-mac.html。ディートリッヒ、これをあなたの答えに組み入れることができますか? –
@MilanBabuškov:これは、以下の回答に既に組み込まれているようです。私は情報を複製する必要はないと思う。 –