3
質問が非常に基本的な場合は親切にしてください。 lddコマンドは、実行可能ファイル上の依存ライブラリを私が知っているものとして表示します。実行可能ファイルでは、これらの情報はどこに保存されていますか?lddコマンドは依存関係情報をどこから取得しますか?
質問が非常に基本的な場合は親切にしてください。 lddコマンドは、実行可能ファイル上の依存ライブラリを私が知っているものとして表示します。実行可能ファイルでは、これらの情報はどこに保存されていますか?lddコマンドは依存関係情報をどこから取得しますか?
これはELF実行可能ファイルの.dynamic
セクションに格納されています。 14ページ(動的テーブル)から始まる、ELF-64 Object File Formatを参照してください:
動的にバインドされたオブジェクトFiのレ
PT_DYNAMIC
プログラムヘッダーエントリを持つことになります。 このプログラムヘッダエントリは、.dynamic
セクションを含むセグメント、 の内容がElf64_Dyn
構造の配列であるセグメントを参照します。
aix、返信ありがとうございます。 :)。それは.pltテーブルと異なるのですか?私が理解するように、.pltには未解決のシンボルが含まれていますか? – Whoami
しかし、シンボル(例: 'malloc')だけでなく、共有オブジェクトの動的ライブラリ(' libc.so'など)も参照する必要があります。 –