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

[debian-users:06876] Re: [Q] kernel source package build



佐野@浜松です。荒船さんありがとうございました。

# いろいろ試していて、報告が遅れました。 _O_

> 通常 Private Package なら S でよいのでは?
> M や L  は rules や,control で,あちこち書き直さなければ
> ならない場所が増えます.

実は M も試してみたりしたのですが、たしかに作成された rules が
違っていたりしました。 binary-doc とか追加されていたかな。
カーネルと pcmcia-cs を作成しようとしていたので、 M が必要かな
などと思ったりしたのですが、お手本にしようと思った既存のカーネル
ソースが、実は既に自分でとりあえず作ったちゃんとパッケージ化されて
いないものだったので、全然うまくいきませんでした。 ^^;

先のメールに書いたように、 hamm の binary-all から 2.0.34 の
カーネルソースのパッケージをもらってきて、インストールしたら
ちゃんと kernel_image も kernel_source も pcmcia-cs パッケージを
作れるようになりました。

# 今までは、最初の一回だけ成功したけれど、後はうまくいかなかった。

> kernelのソースコードはパッケージ化されたものがあるはずです.
> 
> もしこれがkernelの再構築をしたいと言う意味だとすると(ちがいます?)
> http://www.linux.or.jp/~ukai/debian/topics-ml-420.html
> を御覧になるのがよろしいかとおもいます.

一同 2.0.34 のカーネルソースパッケージをインストールしたら、
オリジナルのカーネルソースに自前でパッチを当てたコードも
同様な手順で kernel_image のパッケージを作成できるように
なりました。最初、何故か -r CUSTOM.0.1 でやったらうまく
いかなかったんですが、これはカーネルソースのパッケージを
インストールせずにオリジナルのカーネルソースだけでやった
せいでしょうか。

コードを比較したり、 README.Debian を読んだりしてみると、
 Debian でパッケージ化された 2.0.34 のカーネルソースは
 ThinkPad 700/710 用の MCA パッチと、ビデオフレームグラバー
用 ? の bigphysicalarea パッチが当ててあるほかに、
 pci.c や fs/fcntl.c に修正が入っているらしく、こちらの
ほうが良さそうに思えたので、 dpkg -i でインストールした
 Debian パッケージのカーネルソースにパッチを当てて再構築
しました。

また、 pcmcia-cs も Debian パッケージのコードは etc 以下
の設定ファイル serial に Debian 向けの修正 ( /dev/cua? を
持たないことに対応) が入っていて、内蔵モデムとカードモデム
の両立についても考慮されているようなので、やはり比較した
上でパッケージ化されたコードを使うことにしました。

結局、カーネルソースも pcmcia-cs のソースも Debian で
使う場合はパッケージ化されたものを入手できれば、それが
最善なようです。

# ネットワーク的に遠かったりして、 ftp で入手できない
# 場合にはどうすれば良いか、という問題にはまだ答えを
# 出せていないのですが。この場合はあきらめてパッケージ
# 化しないという解が一番楽なのかな。
# 通販で最新の CD-ROM を入手する、という方法もあるかも。

参考までに、私が使ったカーネルパッチを報告します。

1) VFAT-jp パッチ

  VFAT 上の日本語ファイル名を表示可能とするためのパッチ。
 こんな風に使えます。
  # ls -ls /mnt/hda1/windows/`echo 雲|nkf -s`* |nkf -e -x
  304 -rwxr-xr-x   1 root     root       307514 Sep  5  1996 /mnt/hda1/windows/雲.bmp

  入手場所は <http://fukuda.aist-nara.ac.jp/~hirosi-k/Linux/linux.html> です。
  なお、私は入手したバージョン 0.8a には SJIS をデフォルトにすると
   make が通らない ( inode.c に行末の ; が落ちた個所が 1 行できる) と
  いう typo がありました。既に上記の Web Page の作者である川口さんには
  メールで報告し、対応済みのはずですが、もしうまく make できなかったら
  調べてみると良いかもしれません。
  
2) newmem パッチ

  カーネルが 64MB 以上のメモリーを自動で認識可能とするパッチ。
  2.0.33 の時から使い始めましたが、 2.0.34 でも動作には問題
  無いようです。入手したのは JAIST にある Linux Mama のミラーから。
  <http://nirvana.jaist.ac.jp:8000/~daisuke/mama/LinuxMama.html>

3) 640MB MO (sector size 2048) 対応パッチ。

  名前のとおり 640MB の MO を使えるようにするパッチです。
  2.0.27 用のパッチを入手して、 2.0.32, 2.0.33 でも使って
  いました。 2.0.34 でも動作 OK のようです。と、思ったのですが、
  ちょっと問題が起きているようです。 mke2fs /dev/sda1 して
  e2fsck かけたらシステムごとハングしました。 ^^;;

  以前に入手したページ
   <http://liniere.gen.u-tokyo.ac.jp/2048.html> を読み直すと、
  2.0.34 は専用のパッチが出ているみたいです。これはまたパッチ
  を当て直して再構築しなければ、、、と言うことで、これに関しては
  また後日報告を出し直します。

4) OSSFree 3.8 s8 サウンドドライバー

  これはパッチというのとはちょっと違うような気がしますが、
  オリジナルの Linux カーネルに含まれているサウンドドライバーの
  コードは既に 2 年くらい経過した古いものらしく、最近のサウンド
  関係のハードウェアに対応していないとのことです。このバージョン
  の CS4232 ドライバーで東芝 Portege660CDT, Libretto70, Portege300,
  Panasonic Let's Note (モデル名は失念) などのサウンドカードから
  16bit ステレオ出力できると聞いています。

  <http://www.opensound.com/ossfree> から入手しました。

以上、御参考まで。

-- 
 <sano@xxxxxxxxxxxxxxxxxxxxxxxxxx> : Taketoshi Sano (佐野 武俊)