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
|
.\" Copyright 1995-2000 David Engel (david@ods.com)
.\" Copyright 1995 Rickard E. Faith (faith@cs.unc.edu)
.\" Copyright 2000 Ben Collins (bcollins@debian.org)
.\" Redone for GLibc 2.2
.\" Copyright 2000 Jakub Jelinek (jakub@redhat.com)
.\" Corrected.
.\" Most of this was copied from the README file.
.\"
.\" %%%LICENSE_START(GPL_NOVERSION_ONELINE)
.\" Do not restrict distribution.
.\" May be distributed under the GNU General Public License
.\" %%%LICENSE_END
.\"
.\"*******************************************************************
.\"
.\" This file was generated with po4a. Translate the source file.
.\"
.\"*******************************************************************
.\"
.\" 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 Wed Jan 6 1999 by NAKANO Takeo
.\" Updated & Modified Wed Jan 16 21:05:41 JST 2002
.\" by Yuichi SATO <ysato@h4.dion.ne.jp>
.\" Updated 2013-05-04, Akihiro MOTOKI <amotoki@gmail.com>
.\"
.TH LDD 1 2012\-07\-16 "" "Linux Programmer's Manual"
.SH 名前
ldd \- 共有ライブラリへの依存関係を表示する
.SH 書式
\fBldd\fP [OPTION]... FILE...
.SH 説明
\fBldd\fP はコマンドラインで指定したプログラムや共有ライブラリについて、 それぞれで必要とされる共有ライブラリを表示する。
.SS セキュリティ
.\" Mainline glibc's ldd allows this possibility (the line
.\" try_trace "$file"
.\" in glibc 2.15, for example), but many distro versions of
.\" ldd seem to remove that code path from the script.
通常の場合、 \fBldd\fP は標準の動的リンカ (\fBld.so\fP(8) 参照) を \fBLD_TRACE_LOADED_OBJECTS\fP 環境変数に
1 をセットして起動する。 \fBLD_TRACE_LOADED_OBJECTS\fP に 1
をセットすると、リンカはライブラリの依存関係を表示する。但し、状況次第では、依存関係の情報を得るのにプログラムを直接実行するバージョンの \fBldd\fP
が存在する。したがって、信頼できない実行ファイルに対しては「決して」 \fBldd\fP
を使っては「ならない」。任意のコードを実行することにつながるからである。信頼できない実行ファイルを扱う、より安全な別の方法としては次のようにするとよい。
$ objdump \-p /path/to/program | grep NEEDED
.SH オプション
.TP
\fB\-\-version\fP
\fBldd\fP のバージョン番号を表示する。
.TP
\fB\-v\ \-\-verbose\fP
シンボルのバージョン情報などを含めた全ての情報を表示する。
.TP
\fB\-u\ \-\-unused\fP
使用されていない直接の依存関係を表示する (glibc 2.3.4 以降)。
.TP
\fB\-d\ \-\-data\-relocs\fP
リロケーションを実行し、足りないオブジェクトについてレポートする (ELF のみ)。
.TP
\fB\-r\ \-\-function\-relocs\fP
足りないオブジェクトや関数についてレポートする (ELF のみ)。
.TP
\fB\-\-help\fP
使用法を表示する。
.SH 注意
標準的なバージョンの \fBldd\fP は glibc2 に付属している。 libc5 には古いバージョンのものが付属しており、
これが入っているシステムもまだ存在する。 libc5 バージョンではロングオプションがサポートされていない。 一方、glibc2 バージョンでは
\fB\-V\fP をサポートしておらず、これと同じ意味の \fB\-\-version\fP しかサポートしていない。
.LP
libc5 バージョンのプログラムでは、 コマンドラインで与えられたライブラリ名に \(aq/\(aq
が含まれている場合は、ライブラリ名をそのまま用いる。 \(aq/\(aq が含まれていない場合は、標準的なパスからライブラリを検索する。
カレントディレクトリにある共有ライブラリに対して実行するには、 名前にプレフィックス "./" を付けること。
.SH バグ
\fBldd\fP は a.out 共有ライブラリでは動作しない。
.PP
.\" .SH AUTHOR
.\" David Engel.
.\" Roland McGrath and Ulrich Drepper.
\fBldd\fP は非常に古い a.out プログラム (\fBldd\fP のサポートがコンパイラに追加される以前にビルドされたようなプログラム)
では動作しない。 このようなプログラムに対して \fBldd\fP を用いると、プログラムは \fIargc\fP = 0 で実行される。結果は予想不可能である。
.SH 関連項目
\fBld.so\fP(8), \fBldconfig\fP(8)
.SH この文書について
この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.65 の一部
である。プロジェクトの説明とバグ報告に関する情報は
http://www.kernel.org/doc/man\-pages/ に書かれている。
|