Manpages

名 前

libc − Linux の 標 準 C ラ イ ブ ラ リ の 概 要

説 明

"libc" と い う 用 語 は 、 一 般 に は 「 標 準 C ラ イ ブ ラ リ 」 の 短 縮 表 現 と し て 使 わ れ て い る 。 標 準 C ラ イ ブ ラ リ は 、 全 て の C 言 語 プ ロ グ ラ ム (や 時 に は 他 の 言 語 の プ ロ グ ラ ム ) が 使 用 す る こ と が で き る 標 準 関 数 の ラ イ ブ ラ リ で あ る 。 い く つ か の 歴 史 的 な 理 由 (下 記 参 照 ) か ら 、 標 準 C ラ イ ブ ラ リ を 意 味 す る "libc" と い う 用 語 は Linux で は い く ら か 曖 昧 さ の あ る 用 語 と な っ て い る 。

glibc
Linux で 群 を 抜 い て 広 く 使 わ れ て い る C ラ イ ブ ラ リ は GNU C ラ イ ブ ラ リ http://www.gnu.org/software/libc/">http://www.gnu.org/software/libc/ で あ り 、 し ば し ば glibc と 呼 ば れ る 。 全 て の 主 要 な Linux デ ィ ス ト リ ビ ュ ー シ ョ ン で 現 在 使 わ れ て い る C ラ イ ブ ラ リ で あ る 。 こ の C ラ イ ブ ラ リ の 詳 細 が man−pages プ ロ ジ ェ ク ト の 一 連 の ペ ー ジ (主 に マ ニ ュ ア ル の セ ク シ ョ ン 3) に 記 載 さ れ て い る 。 glibc の ド キ ュ メ ン ト は glibc の マ ニ ュ ア ル に も あ り 、 info libc コ マ ン ド で 参 照 で き る 。 glibc リ リ ー ス 1.0 は 1992 年 9 月 に 作 成 さ れ た (そ れ 以 前 に 0.x リ リ ー ス が あ っ た )。 glibc の 次 の メ ジ ャ ー リ リ ー ス は 2.0 で あ り 、 1997 年 の 初 頭 に リ リ ー ス さ れ た 。 パ ス 名 /lib/libc.so.6 (も し く は 同 様 の パ ス 名 ) は 、 通 常 は glibc ラ イ ブ ラ リ が あ る 場 所 を 指 す シ ン ボ リ ッ ク リ ン ク で あ る 。 こ の パ ス 名 を 実 行 す る と 、 glibc は シ ス テ ム に イ ン ス ト ー ル さ れ た バ ー ジ ョ ン の glibc に 関 す る 様 々 な 情 報 を 表 示 す る 。

Linux libc
1990 年 代 の 初 め か ら 中 頃 に か け て 、 し ば ら く の 間 Linux libc が 存 在 し た 。 Linux libc は 、 glibc 1.x か ら 分 か れ た も の で 、 当 時 の glibc の 開 発 が Linux の 要 望 を 満 た し て い な い と 感 じ た Linux 開 発 者 が 作 成 し た 。 し ば し ば 、 こ の ラ イ ブ ラ リ は (分 か り に く い が ) 単 に "libc" と 呼 ば れ て い た 。 Linux libc は メ ジ ャ ー バ ー ジ ョ ン 2, 3, 4, 5 が リ リ ー ス さ れ た (各 リ リ ー ス に は 多 く の マ イ ナ ー バ ー ジ ョ ン も あ っ た )。 し ば ら く の 間 、 Linux libc は 多 く の Linux デ ィ ス ト リ ビ ュ ー シ ョ ン の 標 準 C ラ イ ブ ラ リ で あ っ た 。 し か し な が ら 、 Linux libc の 活 動 の 元 々 の 動 機 と は 裏 腹 に 、 (1997 年 に ) glibc 2.0 が リ リ ー ス さ れ る 頃 ま で に は 、 glibc は 明 ら か に Linux libc よ り も 優 れ た も の に な っ て お り 、 程 な く し て Linux libc を 使 っ て い た 全 て の 主 要 な Linux デ ィ ス ト リ ビ ュ ー シ ョ ン が glibc に 切 り 替 え た 。 こ の 切 り 替 え は か な り 以 前 に 行 わ れ た の で 、 man−pages プ ロ ジ ェ ク ト で は も は や Linux libc の 詳 細 に 関 す る 記 載 に は 気 を 使 っ て い な い 。 し か し な が ら 、 マ ニ ュ ア ル ペ ー ジ に よ っ て は Linux libc に 関 す る 情 報 の 名 残 、 特 に libc4libc5 へ の 言 及 、 が 残 っ て お り 、 歴 史 を 見 る こ と が で き る 。 他 の C ラ イ ブ ラ リ あ ま り 広 く は 使 わ れ て い な い が 、 Linux 用 の 他 の C ラ イ ブ ラ リ が い く つ か あ る 。 こ れ ら の ラ イ ブ ラ リ は 、 一 般 的 に は 、 機 能 と メ モ リ ー 使 用 量 の 両 方 の 面 で glibc よ り 小 さ く 、 通 常 は 小 さ な バ イ ナ リ を 作 成 す る こ と を 目 的 と し て お り 、 お そ ら く 組 み 込 み Linux シ ス テ ム 用 の 開 発 に 焦 点 を 当 て た も の で あ る 。 こ の よ う な ラ イ ブ ラ リ と し て は 、 http://www.uclibc.org/">uClibc http://www.fefe.de/dietlibc/">dietlibchttp://www.musl-libc.org/">musl libc が あ る 。 こ れ ら の ラ イ ブ ラ リ の 詳 細 も 、 知 ら れ て い れ ば 、 man−pages プ ロ ジ ェ ク ト で カ バ ー さ れ る 。

関 連 項 目

syscalls(2), getauxval(3), proc(5), feature_test_macros(7), man−pages(7), standards(7), vdso(7)

こ の 文 書 に つ い て

こ の man ペ ー ジ は Linux man−pages プ ロ ジ ェ ク ト の リ リ ー ス 3.79 の 一 部 で あ る 。 プ ロ ジ ェ ク ト の 説 明 と バ グ 報 告 に 関 す る 情 報 は http://www.kernel.org/doc/man−pages/ に 書 か れ て い る 。