No.241開発とビルド
shared library
きょうゆうライブラリ・共有ライブラリ
知識レベル 基礎
答えひとことで
共有ライブラリは、必要な時に読み込んで使う共通部品です。
ELF との違い共有ライブラリは複数の実行ファイルから共有して利用するライブラリです使うコマンドfile
くわしく
共有ライブラリ(shared library)は、実行ファイルの中へあらかじめ取り込むのではなく、実行時にローダーが読み込む前提で用意されたライブラリです。これにより、複数のプログラムが同じ機能を共有しやすくなり、ディスク使用量や更新管理を効率化できます。一方で、ライブラリの版違いや互換性の差が原因で、起動失敗や動作不整合が起こることもあります。Linuxで共有ライブラリを理解する時は、配置場所、検索経路、依存関係、ABI互換性をあわせて考えると整理しやすくなります。
なぜ大事?
わかると、こうなる
共有ライブラリの仕組みを理解すると、更新時の影響範囲や起動時の依存関係問題を読み解きやすくなります。
知らないと困る場面
実行時エラーでライブラリ不足が出た時、パッケージ更新後の不具合を調べる時、静的リンクとの違いを考える時に重要です。
よくある誤解
共有ライブラリは静的ライブラリと同じではありません。共有ライブラリは実行時に読み込まれ、静的ライブラリはビルド時に実行ファイルへ取り込まれます。
どこで出会う?
実行時依存、ライブラリ検索経路、パッケージ更新後の不具合
共有ライブラリと静的リンクの違いは何ですか?
使い方の例
- 実行ファイルがどの共有ライブラリへ依存しているかを確認し、版の不一致がないかを調べる。
まちがえやすい言葉と由来
shared libraryVSELF
共有ライブラリは複数の実行ファイルから共有して利用するライブラリです。一方、ELFはLinuxで一般的に使われる実行ファイルやオブジェクトファイルの形式です。
ことばの地図
関係するコマンド
よくある質問
共有ライブラリは実行時に読み込まれる共通部品で、静的リンクは必要なコードをビルド時に実行ファイルへ取り込みます。
共有ライブラリが実行時に関係する理由を説明できるか
資格試験では
- LPIC-2 201大事ビルド、リンク、実行形式、開発基盤の理解共有ライブラリはビルド、リンク、実行形式、開発基盤の理解に関わる語で、試験範囲の文章、設定、障害時の説明を読み解く土台になります。
- LinuC レベル2 201大事ビルド、リンク、実行形式、開発基盤の理解共有ライブラリはビルド、リンク、実行形式、開発基盤の理解に関わる語で、試験範囲の文章、設定、障害時の説明を読み解く土台になります。
shared library を最後まで読みました。
Linux 用語辞典に戻る382 / 512