[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[plamo:26401] /usr/include/{linux,asm}



メンテナ向けの話題かな,とも思うけど,多分 FAQ とかになりそうなのでこっ
ちに振っておきます.

Plamo では従来の習慣にしたがって,/usr/include/{linux,asm} は 
/usr/src/linux/include/{linux,asm} へのリンクにしているのですが,FC4 
の環境を調べていると,/usr/include/{linux,asm} に実体のファイル
(linux-2.4.27 くらいだったか?) がありました.

あれれ,と思ってこの件を日記に書いたところ,田向さんが 
/usr/include/{linux,asm} は glibc2 を作った時の環境にしておくべきだ,
と主張している Linus さんのメールを教えてくれました.

Linus さんのメールを要約すると,/usr/include/{linux,asm} はユーザーラ
ンドのプログラムが参照するファイルであり,それらは glibc2 経由でカーネ
ルの機能を使うのだから,カーネルのバージョンではなく glibc2 のバージョ
ンに合わせるべきだ,ということのようです.また,カーネルソースは 
/usr/src 以下に置いて /usr/src/linux からリンクを貼るというのも無用の
習慣で,最近では個人のホームディレクトリに置いてコンパイルできるように
なっているとか.

# 実際やってみると問題なくコンパイルできました.まぁ,インストールする
# 時は root 権限が必要ですが.

でも,かっての pcmcia-cs,最近では VMware みたいに,カーネルのバージョ
ンに密接に依存したモジュールを作る場合は /usr/include/linux を見るだけ
ではまずいのでは,,と思ったけど,最近は /lib/modules/XXX 以下に build 
や source としてカーネルをビルドしたディレクトリへのリンクが用意されて
いるので,カーネルのソースコードを見る必要がある場合は 
/usr/include/linux ではなく,このリンクを辿ってカーネルソースを探す流
儀になっているようですね.

このヘン,昔の習慣を無自覚に用いていたけど,ちょうどいい機会なので 
Plamo-4.2 あたりでは新しいスタイルに移行しようと考えています.また,こ
れ以外にも昔の慣習を引きずっている部分があちこちに残っていそうなので,
お気づきの点があればご教授くださいませ.

# 多分,私みたいに Plamo しかロクに知らない人間よりも,あれこれ 
# distribution を使っている人の方がよく見えていると思いますので(苦笑

--------
こじま

Follow-Ups
[plamo:26402] Re: /usr/include/{linux,asm}, FUNABARA Masao
[plamo:26403] Re: /usr/include/{linux,asm}, 早間

[検索ページ] [メール一覧]
Plamo ML 公開システム