1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198
|
.\"
.\" This is a ja translation of man page in ld.so-1.9.9 archive
.\"
.\" Japanese Version Copyright (c) 1998 NAKANO Takeo all rights reserved.
.\" Translated Sat May 23 1998 by NAKANO Takeo <nakano@apm.seikei.ac.jp>
.\" Updated & Modified Tue Sep 14 1999 by NAKANO Takeo
.\"
.\"WORD: verbose mode 饒舌モード
.\"WORD: quiet mode メッセージ抑制モード
.\"
.TH ldconfig 8 "14 March 1998"
.SH 名前
ldconfig \- 実行時リンクの結合関係を決定する
.SH 書式
ldconfig
.RB [ \-DvqnNX ]
.RB [ \-f\ conf ]
.RB [ \-C\ cache ]
.RB [ \-r\ root ]
.IR directory \ ...
.PD 0
.PP
.PD
ldconfig
.B \-l
.RB [ \-Dvq ]
.IR library \ ...
.PD 0
.PP
.PD
ldconfig
.B \-p
.SH 説明
.B ldcofig
は最新の共有ライブラリに対して必要なリンクを作成したり、
ライブラリをキャッシュしたりする
(キャッシュは実行時リンカ
.I ld.so
が用いる)。
ライブラリは、コマンドラインや
.I /etc/ld.so.conf
ファイルで指定されたディレクトリや、共有ライブラリが
通常置かれるディレクトリ
.RI ( /usr/lib " と " /lib )
から検索される。
.B ldconfig
は処理するライブラリのヘッダ部分とファイル名をチェックし、
どのバージョンに対してリンクを更新すべきかを判断する。
.B ldconfig
はライブラリを検索するときシンボリックリンクを無視する。
.PP
.B ldconfig
は ELF ライブラリの種類 (libc5 か libc6/glibc か) を判断するとき、
そのライブラリがリンクしている C ライブラリを参考にする。
したがってダイナミックライブラリを作成するときには、
libc に対するリンクを (\-lc をつかって) 明示しておくと良い。
.PP
すでに存在しているライブラリの中には、種類を区別するために充分な
情報が含まれていないものもある。このため
.I /etc/ld.so.conf
ファイルでライブラリの形式を指定することができるようになっている。
これは区別不能な ELF ライブラリ\fBだけ\fPに用いるものである。
フォーマットは "dirname=TYPE" のようにする。ここで TYPE は
libc4, libc5, libc6 のいずれかである
(この書式はコマンドラインでも使える)。\fBスペースを入れてはならない\fP。
.B \-p
オプションも見ておくこと。
.PP
名前に
.B =
が含まれているディレクトリは、形式指定をしない限り
用いることができなくなった。
.PP
.B ldconfig
は通常スーパーユーザー権限で実行しなければならない。
root が所有しているディレクトリやファイルへの書き込み権限が
必要になるからである。
.B ldconfig
は通常、起動時に /etc/rc スクリプトから自動的に実行される。ただし新し
い DLL をインストールしたときには必ず手動で実行しなければならない。
.SH オプション
.TP
.B \-D
デバッグモード。
.B \-N
と
.B \-X
が暗黙のうちに指定される。
.TP
.B \-v
饒舌モード。現在のバージョン番号を表示する。またそれぞれのディレクト
リをスキャンし、新しいリンクを生成するたびに、その内容を表示する。
メッセージ抑制モードを上書きする。
.TP
.B \-q
メッセージ抑制モード。
警告を表示しない。
.TP
.B \-n
コマンドラインで指定されたディレクトリのみを処理する。通常共有ライブラリが
置かれるディレクトリ
.RI ( /usr/lib " と " /lib )
や
.I /etc/ld.so.conf
で指定されたディレクトリは処理しない。暗黙のうちに
.B \-N
が指定される。
.TP
.B \-N
キャッシュを再構成しない。同時に
.B \-X
が同時に指定されなければ、リンクのほうは更新される。
.TP
.B \-X
リンクを更新しない。
.B \-N
が同時に指定されなければ、キャッシュのほうは再構成される。
.TP
.B \-f conf
.B conf
を
.I /etc/ld.so.conf
の代わりに用いる。
.TP
.B \-C cache
.B cache
を
.I /etc/ld.so.cache
の代わりに用いる。
.TP
.B \-r root
.B root
にカレントディレクトリを変更し、ここをルートディレクトリとして用いる。
.TP
.B \-l
ライブラリモード。それぞれのライブラリを手動でリンクする。
熟練者のみが用いるべきである。
.TP
.B \-p
現在のキャッシュに保存されているディレクトリのリストと、
ライブラリの候補を表示する。
.SH 例
起動ファイル
.I /etc/rc
に以下のような行
.RS
/sbin/ldconfig -v
.RE
があると、共有バイナリへの正しいリンクが生成され、キャッシュが再構成さ
れる。
.TP
コマンドラインから
.RS
# /sbin/ldconfig -n /lib
.RE
を root 権限で実行すると、 /lib に新しくインストールされた DLL に対し
て、正しいシンボリックリンクを生成する。
.SH ファイル
.PD 0
.TP 20
.B /lib/ld.so
実行時リンカ/ローダー。
.TP 20
.B /etc/ld.so.conf
コロン・スペース・タブ・改行・コンマで区切られたディレクトリのリスト。
それぞれのディレクトリでライブラリが検索される。
.TP 20
.B /etc/ld.so.cache
.B /etc/ld.so.conf
で指定されたディレクトリで見つかったライブラリの順序付きリスト。
.TP
.B lib*.so.version
共有ライブラリ。
.PD
.SH 関連項目
.BR ldd (1),
.BR ld.so (8)
.SH バグ
.LP
.B ldconfig
の
.B ld.so
に関連した機能は、 libc バージョン 4.4.3 以上でコンパイルされた実行ファ
イルでしか利用できない。
.PP
.B ldconfig
はユーザープロセスなので、手動で実行しなければならない。また新たな DLL
がインストールされたときには、そのライブラリを
.B ld.so
が利用できるように共有ライブラリの再調整やリンクの
張りかえをしなければならないが、これを動的に行う手段は存在しない。
.SH 著者
David Engel と Mitch D'Souza。
|