aboutsummaryrefslogtreecommitdiff
path: root/ja_JP.eucJP/man/man8/ldconfig.8
blob: 1c17f6d70a9487015ea92298691bc6c055cf177c (plain) (blame)
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
.\"
.\" Copyright (c) 1993 Paul Kranenburg
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\"    notice, this list of conditions and the following disclaimer.
.\" 2. Redistributions in binary form must reproduce the above copyright
.\"    notice, this list of conditions and the following disclaimer in the
.\"    documentation and/or other materials provided with the distribution.
.\" 3. All advertising materials mentioning features or use of this software
.\"    must display the following acknowledgement:
.\"      This product includes software developed by Paul Kranenburg.
.\" 3. The name of the author may not be used to endorse or promote products
.\"    derived from this software without specific prior written permission
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
.\"	%Id: ldconfig.8,v 1.16 1998/09/05 03:30:54 jdp Exp %
.\" jpman %Id: ldconfig.8,v 1.3 1997/07/22 16:49:42 horikawa Stab %
.\"
.Dd October 3, 1993
.Dt LDCONFIG 8
.Os FreeBSD
.Sh 名称
.Nm ldconfig
.Nd 共有ライブラリのキャッシュを設定する
.Sh 書式
.Nm ldconfig
.Op Fl aout | Fl elf
.Op Fl Rmrsv
.Op Fl f Ar hints_file
.Op Ar directory | file Ar ...
.Sh 解説
.Nm
は、ダイナミックリンカ
が、複数のディレクトリから利用可能な共有ライブラリを速く捜し出せるよう
につかわれる
.Dq ヒント
の集合を準備するために使われます。
コマンドは、組み込みのシステムディレクトリと
コマンドラインで指定された任意の
.Ar ディレクトリ
(を指定された順番) で共有ライブラリを探し、
その結果を
システムファイル
に保存します。
これは、
ダイナミックリンカ
が要求された共有ライブラリを読み込む際のディレクトリ検索操作
オーバヘッドをあらかじめ払っていることになります。
.Pp
コマンドラインにて指定するファイル名は共有ライブラリを検査するディクトリ
を含むことが期待されます。
各ディレクトリのパス名は改行文字から始まる必要があります。
空行およびコメント文字
.Ql \&#
から始まる行は無視されます。
.Pp
共有ライブラリは、実行されようとするプログラムによって必要とされる
ならば、利用可能なものが自動的に読み込まれることになります。
これは、実行形式に検索パスを保存する必要性を無くします。
.Pp
.Ev LD_LIBRARY_PATH
環境変数は、キャッシュから使用するディレクトリ (や、その順序関係) を
上書きしたり、共有ライブラリを探す追加のディレクトリを
指定するために使われます。
.Ev LD_LIBRARY_PATH
は、共有ライブラリを読み込む必要がある時、
ダイナミックリンカ
によって検索されるディレクトリパスのリストを
コロン
.Sq \:
で区切って指定します。
これは、
.Xr ld 1 
における
.Fl L
オプションと、実行時点では等価です。
.Pp
.Nm ldconfig
は典型的にはブート時の手続きのひとつとして実行されます。
.Pp
以下のオプションが
.Nm ldconfig
で認識されます。
.Bl -tag -width indent
.It Fl aout
a.out 形式の共有ライブラリに対するヒントを生成します。
.It Fl elf
ELF 形式の共有ライブラリに対するヒントを生成します。
.It Fl R
以前に設定したディレクトリを再度検索します。
以前作成したヒントファイルをオープンし、
ヘッダからディレクトリリストを取り出します。
コマンドラインに指定したパス名も処理します。
.It Fl f Ar hints_file
標準のファイルの代りに、
特定のヒントファイルを読み込んだり、更新したり、その両方を
行ったりします。
このオプションは、テストのために提供されています。
.It Fl m
ヒントファイルの内容を指定されたディレクトリで見付かったものに
置き換える代りに、新しいディレクトリの内容を
.Dq 併合 (merge)
します。
以前の
.Nm
の実行によってヒントファイル内に記録されているディレクトリも、
新しい共有ライブラリのために再び検索されます。
.It Fl r
現在のヒントファイルの中身について、標準出力に表示します。
ヒントファイルは変更されません。
ヒントファイル中のディレクトリリストが組み込まれます。
.It Fl s
共有ライブラリのために、システムの組み込みディレクトリ
.Pq Dq /usr/lib
を検索しません。
.It Fl v
冗長モードに切替えます。
.Sh セキュリティ
.Ev セット uid (set-user-Id)
プログラムのアドレス空間に共有ライブラリを読み込む時には、
特別の注意をしなければなりません。
そのようなプログラムが実行される時はいつでも、
ダイナミックリンカ
はヒントファイルからだけ共有ライブラリを読み込みます。
特に、
.Ev LD_LIBRARY_PATH
は、ライブラリを探すためには使われません。
したがって、 ldconfig の役割には二つあります。
素早い検索のためにヒント集合を作成することに加えて、
共有オブジェクトが共有ライブラリを安全に読み込むことができる
ディレクトリの集まりを特定することも、その役割です。
.Nm ldconfig
によって特定されたディレクトリ集合は、システム管理者の制御下にあること
が仮定されています。
.Sh 環境変数
.Bl -tag -width OBJFORMATxxx -compact
.It Ev OBJFORMAT
.Pa /etc/objformat
(後述) に優先し、
.Fl aout
と
.Fl elf
のどちらがデフォルトであるかを決定します。
設定されている場合、値は
.Ql aout
もしくは
.Ql elf
のいずれかである必要があります。
.El
.Sh 関連ファイル
.Bl -tag -width /var/run/ld-elf.so.hintsxxx -compact
.It Pa /var/run/ld.so.hints
a.out ダイナミックリンカの標準ヒントファイル。
.It Pa /var/run/ld-elf.so.hints
ELF ダイナミックリンカの標準ヒントファイル。
.It Pa /etc/ld.so.conf
伝統的な設定ファイルであり、
.Fl aout
付きで起動した場合のためにディレクトリ名を格納します。
.It Pa /etc/ld-elf.so.conf
伝統的な設定ファイルであり、
.Fl aout
付きで起動した場合のためにディレクトリ名を格納します。
.Fl elf .
.It Pa /etc/objformat
.Fl aout
と
.Fl elf
のどちらがデフォルトであるかを決定します。
存在する場合、
.Ql OBJFORMAT=aout
か
.Ql OBJFORMAT=elf
のいずれかの 1 行から成る必要があります。
.Sh 関連項目
.Xr ld 1 ,
.Xr link 5
.Sh 歴史
.Nm
ユーティリティーは SunOS 4.0 ではじめに現れました。
現在の形は、 FreeBSD 1.1 からです。