FreeBSD port 作成者のためのハンドブック
Prev |  | Next

# Chapter 5. 特別な配慮

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

# 5.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%%` を 使用することを推奨します.

Prev | Home | Next
ビルドのメカニズム |  | `MASTERDIR`

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