Dellの最近のPCにUbuntuを入れる場合、tg3を組み込んでやらないとネットワークが認識しない。
で、ドライバはBroadcomのサイトからダウンロードして、野良ビルドでさっくり入るのだが、カーネルバージョンアップの度にmakeするのも面倒だし、うっかり忘れてリブートしたら、リモートでログインできなくなる。
dkms(Dynamic Kernel Module Support)という機構を使えば、カーネルバージョンアップの時に自動的にビルドして、ドライバをインストールしてくれるから、できればこれを使いたい。
Dellのサポートサイトにも記述はあるのだが、dkms.confとか作成してないし、dkmsに登録もしてないから、dkmsをインストールするって手順は無意味でないかい?
色々と、Webを見ても、日本語の記述がごく僅かしか無いし、tg3のdkms.confの記述なんか皆無だ。
で、何とか dkms.conf をでっち上げて、dkms add …、dkms build… ってやると、tg3_flags.h の作成でエラーと言われて止まる。
make.log見ても中身はdkmsのメッセージのみでエラーが無く、空っぽで、元ソースでtg3_flags.hを作っておいて、dkms.confでCLEAN=”make -q clean”と定義してやると、cleanでexit code 1になるけど、ビルドには成功する。
Makefileの
sh makeflags.sh > tg3_flags.h
の行が悪いのだろうというのは分かるが、Why?
shellの多重起動がいかんのかな?