ライブラリ

ライブラリとは
ライブラリ 説明
静的ライブラリ ビルド時に実行ファイル内に組み込まれる
 メリット:実行ファイルのみで動作できる。別環境で動作可能
 デメリット:実行ファイルサイズが大きくなる
共有ライブラリ プログラム実行時にロードされ、複数のプログラム間で共有される
 メリット:実行ファイルサイズを小さくできる
 デメリット:実行時に適切に設置されたライブラリが必要
リンクとは
リンク 説明
スタティックリンク ビルド時にライブラリの機能を実行ファイルに組み込む。
この時に組み込まれるライブラリが静的ライブラリ
ダイナミックリンク 実行時にライブラリを呼び出す。
この時に呼び出されるライブラリを共有ライブラリ
共有ライブラリの確認

一般的に「/lib」または「/usr/lib」に配置されている。

ファイル名は「libxxx.so~」の形式が多い

実行ファイルが必要とする共有ライブラリは「ldd」コマンドで確認できる。

共有ライブラリの検索

上記のように、一般的には「/lib」または「/usr/lib」に共有ライブラリを配置する場合には、追加で操作は不要となる。

ただし、それ以外の場所に配置する場合には、配置場所のパスを設定する必要がある。

パスの設定方法は2通りある。

1.「/etc/ld.so.conf」ファイルに設定(永久設定)

$ sudo vi /etc/ld.so.conf
# 配置したディレクトリの絶対パスを記載する
 
$ ldconfig
# .etc/ld.so.cacheを更新

2.環境変数「LD_LIBRARY_PATH」の設定(一時設定)

$ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:<設定したいディレクトリ>