sudo sed -i 's/^# deb-src/deb-src/g' /etc/apt/source.list
source.listのdev-srcのコメントをはずす。
修正したら
sudo apt update
linuxビルドに必要なものをインストールする。
sudo apt install ccache fakeroot libncurses5-dev
sudo apt build-dep linux
sourceの取得
apt source linux
で取得できるが
NOTICE: 'linux' packaging is maintained in the 'Git' version control system at:
git://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/bionic
Please use:
git clone git://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/bionic
上記の方法で取得したubuntu kernelは、下記の方法ではビルドできない
若干の修正が必要
git で取得しろとのこと
git clone https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
cd linux
mkdir ../build
cp /boot/config-`uname -r` ../build/.config
make O=../build/ olddefconfig
カーネルビルド
make -j9 O=../build/ LOCALVERSION=-xxx
モジュールビルド
make modules -j9 O=../build/ LOCALVERSION=-xxx
パッケージ作成
make bindeb-pkg O=../build/ LOCALVERSION=-xxx
bindeb-pkg バイナリパッケージのみ
deb-pkg ソースパッケージも作成
インストール
sudo apt ../*.deb
build 時間
core2 duo
real 190m49.470s
user 310m50.655s
sys 36m25.217s
Intel(R) Core(TM) i3-6100U CPU @ 2.30GHz
real 115m21.085suser 166m20.077s
sys 17m37.104s
Intel(R) Pentium(R) CPU G4620 @ 3.70GHz
real 51m28.830s
user 185m58.351s
sys 15m43.776s
Intel(R) Core(TM) i7-9700 CPU @ 3.00GHz
real 20m22.547s
user 113m49.728s
sys 11m31.246s
lxd環境
real 1087.78 18m7.78
user 7239.94 120m39.94
sys 874.63 14m34.63