OrangePi-PCを使ってみる

カーネルヘッダーをインストールする


新しいドライバーをインストールするときなど、以下のエラーになることが有ります。
Error! Your kernel headers for kernel 3.4.113-sun8i cannot be found.
Please install the linux-headers-3.4.113-sun8i package,
or use the --kernelsourcedir option to tell DKMS where it's located

これはカーネルヘッダーがないというエラーです。
armbian-configを使って以下の手順でカーネルヘッダーをインストールすることができます。






カーネルヘッダーをインストールすると、buildディレクトリができます。
buildディレクトリはカーネルヘッダーへのシンボリックリンクです。
armbian-configには、特定バージョンのヘッダーを取ってくる機能が有りません。
常に最新版のカーネルヘッダーがダウンロードされます。
従ってカーネルヘッダーをインストールするときには、カーネル本体も最新にしておく必要が有ります。
$ ls -l /lib/modules/$(uname -r)
total 2700
lrwxrwxrwx  1 root root     38 May  8 00:50 build -> /usr/src/linux-headers-5.10.34-sunxi64
drwxr-xr-x 10 root root   4096 Jun 12 14:28 kernel
-rw-r--r--  1 root root 677782 May  8 00:50 modules.alias
-rw-r--r--  1 root root 712500 May  8 00:50 modules.alias.bin
-rw-r--r--  1 root root  12971 May  8 00:50 modules.builtin
-rw-r--r--  1 root root      0 May  8 00:50 modules.builtin.alias.bin
-rw-r--r--  1 root root  15980 May  8 00:50 modules.builtin.bin
-rw-r--r--  1 root root  89406 May  8 00:50 modules.builtin.modinfo
-rw-r--r--  1 root root 242394 May  8 00:50 modules.dep
-rw-r--r--  1 root root 355795 May  8 00:50 modules.dep.bin
-rw-r--r--  1 root root    268 May  8 00:50 modules.devname
-rw-r--r--  1 root root 102716 May  8 00:50 modules.order
-rw-r--r--  1 root root    377 May  8 00:50 modules.softdep
-rw-r--r--  1 root root 234284 May  8 00:50 modules.symbols
-rw-r--r--  1 root root 288708 May  8 00:50 modules.symbols.bin



RaspberryPiのカーネルヘッダーのインストールは以下のコマンドで行います。
$ sudo apt install raspberrypi-kernel-headers

カーネルヘッダーをインストールすると、buildディレクトリができます。
buildディレクトリはカーネルヘッダーへのシンボリックリンクです。
aptでは特定バージョンのヘッダーを取ってくる機能が有りません。
常に最新版のカーネルヘッダーがダウンロードされます。
従ってカーネルヘッダーをインストールするときには、カーネル本体も最新にしておく必要が有ります。
$ ls -l /lib/modules/$(uname -r)
total 2100
lrwxrwxrwx  1 root root     31 Aug 19  2019 build -> /usr/src/linux-headers-4.19.66+
drwxr-xr-x 11 root root   4096 Sep 14  2019 kernel
-rw-r--r--  1 root root 526561 Aug 19  2019 modules.alias
-rw-r--r--  1 root root 547571 Aug 19  2019 modules.alias.bin
-rw-r--r--  1 root root  11077 Aug 19  2019 modules.builtin
-rw-r--r--  1 root root  12136 Aug 19  2019 modules.builtin.bin
-rw-r--r--  1 root root 182438 Aug 19  2019 modules.dep
-rw-r--r--  1 root root 253226 Aug 19  2019 modules.dep.bin
-rw-r--r--  1 root root    302 Aug 19  2019 modules.devname
-rw-r--r--  1 root root  62184 Aug 19  2019 modules.order
-rw-r--r--  1 root root    379 Aug 19  2019 modules.softdep
-rw-r--r--  1 root root 236983 Aug 19  2019 modules.symbols
-rw-r--r--  1 root root 291881 Aug 19  2019 modules.symbols.bin

現在使用中のカーネルバージョンのヘッダーが欲しいときは、こちらの手順でカーネルソース をインストールする必要が有ります。