"血をもって書け。そうすればあなたは、血が精神だということを経験するだろう。"

FC5カーネル再構築

しようと思ったけど結局できなかった。何もかも後回しにして土日を潰す。なんでこんなことやってるのかというと、話は長いんだけど


  1. ノート(EPSON)にFedora Coreを入れてネットをしようと思ったんだけど、もともと無線LANアダプタがついていない。
  2. NET GEARの無線LANカードを買ってつけようとしたけどドライバがWindows用しかない。
  3. Windows用ドライバをLinuxで使えるようにしてくれる(かもしれない)NdisWrapperの存在を知り試してみる。
    http://www.atmarkit.co.jp/flinux/rensai/linuxtips/767ndiswrapper.html
  4. が、NdisWrapperのコンパイルができない。エラーメッセージから察するに、どうもカーネルがちゃんと入っていないような気がする。インストールした覚えもないし。

そこで今度こそとカーネルの再構築にトライ。参考にしたのは
http://www.mland.jp/~fedora/kernel-2.6.17-1.2257.fc5.html
まずuname -aでカーネルのバージョンを調べろと色んなところに書いてあったのでやってみる。バージョンは2.6.18-1.2257らしいのでカーネルを落としてくる。brewbuilderというユーザーがいませんよというメッセージが出るが、作ってないんだからいるわけないんじゃない?と調べてみる。
http://kkrtsk.blog55.fc2.com/blog-entry-28.html#entry28
というわけでユーザーは作ればいいらしい。ビルドはi686をターゲットにしてなんとか成功したっぽい。ところがコンパイルができない。

code model `kernel' not supported in 32 bit mode
sorry, unimplemented: 64-bit mode not compiled in

などというエラーを吐いてmakeが失敗する。ふとunameコマンドの出力をよく見てみるとmachineとprocessorはi686なのにhardware platformはi386。一体なんだこりゃ。こいつが原因か?と思って調べてみるが、そもそもunameのhardware platformオプションについてちゃんと説明してくれているサイトがなかなか見当たらない。そろそろ疲れてきたぞ。今回も敗北か。・・・という感じのことをもう半年以上続けてるわけです。正直なところハードウェアはさっぱりでi386とかi686とかx86_64とか32ビットとか64ビットとかいわれてもイマイチピンとこないんですよね。

実はNdisWrapperのコンパイルエラーはカーネルの問題ではなくて単なるリンクエラーか?