共有ライブラリへのパス

2018年11月27日火曜日

共有ライブラリーのデフォルトでは /lib と /usr/lib にパスが通っている
それ以外のパスを追加したい場合

1.特定アプリの場合
環境変数「LD_LIBRARY_PATH」に設定する
環境変数なので設定した環境変数が参照できるプログラムしか有効にはならない
一時的に設定したい場合は以下のようにする

$ LD_LIBRARY_PATH=/usr/local/lib:/usr/lib; export LD_LIBRARY_PATH
または
$ export LD_LIBRARY_PATH=/usr/local/lib:/usr/lib

すでに「LD_LIBRARY_PATH」に値が設定されており、そこに追加したい場合は、以下のようにする

$ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib:/usr/lib

2.システム全体で設定
/etc/ld.so.conf」に設定する
システム全体でライブラリパスを設定したい場合は、/etc/ld.so.confファイルにライブラリへのパスを追記する
ubuntu10.04やFedora14では以下のように書かれており、直接書くのではなく、「/etc/ld.so.conf.d」に置かれた.conf拡張子のファイルを読み込んでいます

$ cat /etc/ld.so.conf
include /etc/ld.so.conf.d/*.conf

なので、同様に通したいパスを書いたXXX.confのようなファイルを追加してもよい
設定ファイル/etc/ld.so.confからキャッシュファイル/etc/ld.so.cacheへキャッシュ化を行います
OSは、検索速度を上げるために、ライブラリパスをキャッシュファイルから検索します
従って、設定ファイルの内容を元にキャッシュファイルを更新する必要があります
# ldconfig

確認
# ldconfig -v

Copyright © 2010 休眠 | Free Blogger Templates by Splashy Templates | Layout by Atomic Website Templates