FreeBSD port 作成者のためのハンドブック
前のページ |  | 次のページ

# 第 6章特別な配慮

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

# 6.1. 共有ライブラリ

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

必要であれば、 共有ライブラリがインストールされるディレクトリのリストを格納する make 変数 `LDCONFIG_DIRS` を定義することにより、 新しいライブラリがインストールされるデフォルトの位置を上書きすることも可能です。 例えば、その port が共有ライブラリを ``PREFIX`/lib/foo` と ``PREFIX`/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%%` を使用することを推奨します。

前のページ | ホーム | 次のページ
ビルドのメカニズム |  | 配布制限がある ports

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