Chapter 5. 特別な配慮

port を作成する場合, 考慮しなくてはいけないことが 他にもいくつかあります. このセクションでは, それらのうちでも 特によくあることについて説明します.

5.1. 共有ライブラリ

その port が共有ライブラリのインストールを行なう場合, make 変数 INSTALLS_SHLIB を定義してください. これにより, bsd.port.mkpost-install ターゲットの実行時に 新しいライブラリがインストールされたディレクトリ (通常は PREFIX/lib) に ${LDCONFIG} -m を実行し, 共有ライブラリキャッシュへの登録が行なわれるようになります. また, この変数が定義されている場合, 共有ライブラリを インストールしたユーザが それをすぐに使い始められるように, また, 削除の際には そのライブラリが まだ存在していると システムに誤認されないように, 適切な @exec /sbin/ldconfig -m@unexec /sbin/ldconfig -R のペアが pkg-plist ファイルに 指定されているように扱われます.

必要であれば, 共有ライブラリがインストールされるディレクトリの リストを格納する make 変数 LDCONFIG_DIRS を 定義することにより, 新しいライブラリがインストールされる デフォルトの位置を上書きすることも可能です. 例えば, その port が共有ライブラリを PREFIX/lib/fooPREFIX/lib/bar に インストールする場合, Makefile で 以下の記述を使用することができます:

INSTALLS_SHLIB= yes
LDCONFIG_DIRS=  %%PREFIX%%/lib/foo %%PREFIX%%/lib/bar

pkg-plist の他の部分と同様に, LDCONFIG_DIRS の内容も sed(1) による 処理が行なわれるため, ここでも PLIST_SUB に 指定した置換が行なわれることに注意してください. PREFIX には %%PREFIX%% を, LOCALBASE には %%LOCALBASE%%, X11BASE には %%X11BASE%% を 使用することを推奨します.

FreeBSD ports システムに関する質問は、(英語で) <ports@FreeBSD.org> へ、
この文書の原文に関するお問い合わせは、(英語で) <doc@FreeBSD.org> までお願いします。