ccache

とりあえず自分の端末でコンパイルを速くすべく

  • カーネル作り直して
  • ccache 入れて

ということをヤッてみることに。ちなみに参考にさせて頂いたのは MySQL 5.5をわずか30秒足らずでコンパイルするためのテクニック です。

とりあえず

カーネルのソースパケジを入手。

$ sudo apt-get install linux-source-3.2.0

で、/usr/src 配下のディレクトリに行って

$ cd /usr/src/linux-source-3.2.0

ええと、でびあんのカーネルの作り方忘れたな。上記ドキュメントによれば、Ubuntuの公式ドキュメントが云々、とありますので確認。ええと、make-kpkg で作りましょう。

$ ls 
debian  debian.master  linux-source-3.2.0.tar.bz2
$ sudo tar jxvf linux-source-3.2.0.tar.bz2
$ cd linux-source-3.2.0
$ sudo cp /boot/config-`uname -r` .config
$ sudo make menuconfig

とりあえず menuconfig から CPU 最適化なオプションを選択。つい癖で sudo 付けるのを忘れてしまいます。
以下が設定した項目です。

  • Processor type and features -> Processor family は Core 2/newer Xeon
    • /proc/cpuinfo の cpu family は 6 です
    • 同様に model name が Intel(R) Core(TM) i5 CPU とのこと
    • 大丈夫かな。。
  • Processor type and features -> Maximum number of CPUs
    • 256 とのことなのでスルーするか (入力方法が分からない)
    • .config 無理やり変更?
  • Processor type and features -> Numa Memory Allocation and Scheduler Support
    • off に

で、コンパイル、と思ったら make-kpkg なパケジが入っていない模様。

$ sudo apt-get install -fy kernel-package

やれやれ、と言いつつ以下。

$ sudo make-kpkg --initrd --append-to-version=-yamanetoshi-20121118 kernel-image kernel-headers

面倒なので fakeroot ではなく sudo 使いました (を
とりあえず時間かかりそうなので一旦ここでエントリ投入。

そういや昨晩

64bit カーネルの int のサイズが云々て話になった記憶が蘇えってきた。別途確認の方向にて。