「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

/etc/ld.so.conf

pointこの用語のポイント

point設定ファイルだよ

pointUNIX系のOSで使われるよ

point共有ライブラリの探し場所を書いておくよ

スポンサーリンク

簡単に書くよ

/etc/ld.so.confとは

UNIX系のOS(コンピュータの人格に相当するソフト)(Linuxとか)で使われるファイルのひとつ
であり

共有ライブラリ(いろいろなプログラムから使える、プログラムの部品)の検索パス(共有ライブラリの探し場所)を書いておく設定ファイル
です。


image piyo

詳しく書くよ

順番に見ていきましょう。
まずは予備知識として

共有
ライブラリ
共有ライブラリ
パス
・共有ライブラリの検索パス


について説明します。
「そんなの説明されなくても知ってるよ!」な人は適当に読み飛ばしてください。

共有は、今回は「一緒に使おうね~」の意味です。

/etc/ld.so.conf

ライブラリは「プログラムの部品をいっぱい集めて、ひとまとめにしたファイル」です。
いろいろできる便利な部品が詰まっています。

/etc/ld.so.conf2

共有ライブラリは「いろいろなプログラムから使えるライブラリ」です。
文字通り、共有して使えるライブラリです。

/etc/ld.so.conf3

パスは「ファイルやフォルダの場所」です。

/etc/ld.so.conf4

例えば「/etc/ld.so.conf」もパスです。
「/etc/ld.so.conf」は

「etc」ディレクトリの中の「ld.so.conf」ファイル

を表しています。

/etc/ld.so.conf5

コンピュータには「○○に関しては、ここを探してね」なパスが事前に登録されています。

例えば、ピヨ太君が「lsコマンドを実行したとしましょう。

ls

と画面に入力して、ポチっとエンターキーを押しました。

/etc/ld.so.conf6

このとき、実際には

/usr/bin/ls

が呼ばれます。
単に「ls」と指示しただけなのに「usr」ディレクトリの中の「bin」ディレクトリの中の「ls」ファイルが動くのです。

/etc/ld.so.conf7

その理由は

「コマンドが入力されたら、該当するファイルがあるかを『usr』ディレクトリの中の『bin』ディレクトリの中から探してよ」とコンピュータに登録されている

からです。
検索パス(探す場所)が設定されているため、単に「ls」と入力しても「/usr/bin/ls」が動きます。

もしも探す場所が設定されていなかったら「ls」と入力しても動きません。
コンピュータさんからは「lsって何?そんなものは、ないよ!」と言われてしまいます。
探す場所が設定されていない状況で「ls」コマンドを実行したければ「/usr/bin/ls」のようにパスを全部指定してあげる必要があります。

共有ライブラリも同じです。
事前に「共有ライブラリを使いたいって言われたら、この場所から探してね」が設定されています。

例えば、そうですね。
探す場所として「/usr/lib」が登録されていたとしましょう。

/etc/ld.so.conf8

ピヨ太君が「piyota.libを使いたいんだけど!」と言いました。

/etc/ld.so.conf9

そうすると、コンピュータさんは「/usr/lib」の中に「piyota.lib」があるかを探してくれます。

/etc/ld.so.conf10

この「共有ライブラリを使いたいって言われたら、この場所から探してね」な探し場所を本ページでは「共有ライブラリの検索パス」と表現します。
※「共有ライブラリの検索パス」云々はイメージしやすいように少し嘘をついています。実際の仕組みは「/etc/ld.so.cache」の説明を ご覧ください。

以上を踏まえて

共有ライブラリの検索パスを書いておく設定ファイル

が「/etc/ld.so.conf」です。
「etc」ディレクトリの中の「ld.so.conf」ファイルで「/etc/ld.so.conf」ね。

/etc/ld.so.conf11

「/etc/ld.so.conf」はUNIX系のOSLinuxとかMacとか)で使われるファイルです。

ファイルの編集は

vi /etc/ld.so.conf

とかやれば普通にやれます。

ただし、このままでは編集した結果がコンピュータに反映されません。

「/etc/ld.so.conf」を編集した後で

ldconfig

を実行してください。
ldconfig」コマンドを実行することで編集した「/etc/ld.so.conf」の中身がコンピュータに反映されます。

実は、コンピュータさんは「/etc/ld.so.conf」ではなく「/etc/ld.so.cache」というファイルを見て、お仕事をしています。

/etc/ld.so.conf12

「ldconfig」は「/etc/ld.so.conf」の中身を「/etc/ld.so.cache」に反映するコマンドです。

/etc/ld.so.conf13

「/etc/ld.so.conf」の中身が「/etc/ld.so.cache」に反映されて、はじめて、コンピュータさんに認識されます。


image piyo2

一言でまとめるよ

まぁ「/etc/ld.so.conf」って単語が出てきたら「共有ライブラリ(いろいろなプログラムから使える、プログラムの部品)の探し場所を書いておくファイルなんだな~」と お考えください。

一番上に戻るよ
スポンサーリンク
書籍画像072
書籍画像019

おまけ

■検索してみる?




書籍画像
わわわ説明術コラム
宣伝だよ
「分かった!」と思わせる説明の技術 知識ゼロの相手にも伝わるようになる本【Audible】
つくって、壊して、直して学ぶ Git&GitHub 入門
ソフトウェア受託現場の「失敗」集めてみた。 42の失敗事例で学ぶ受託開発のうまい進めかた