1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Raspberry Pi で /lib/modules/(kernel version)/build が見つからないときの解決方法

Posted at

前提条件

uname コマンドの実行結果

uname -r 実行結果
6.1.77-v7+
uname -a 実行結果
Linux volumio 6.1.77-v7+ #1730 SMP Thu Feb  8 15:17:51 GMT 2024 armv7l GNU/Linux

エラーが発生した状況

ラズパイをメディア再生サーバ化できる Volumio 3 を使い始めました。
使用している Raspberry Pi 2B には Wi-Fi モジュールが取り付けられていないため、Wi-Fi ドングルを接続し、ドライバをインストールしようとしました。

コマンド実行
sudo apt update
sudo apt install vim build-essential git raspberrypi-kernel-headers dkms -y
mkdir gnab
cd gnab
git clone https://github.com/gnab/rtl8812au.git
cd rtl8812au
sed -i 's/CONFIG_PLATFORM_I386_PC = y/CONFIG_PLATFORM_I386_PC = n/g' Makefile
sed -i 's/CONFIG_PLATFORM_ARM_RPI = n/CONFIG_PLATFORM_ARM_RPI = y/g' Makefile
make -j4  # ここでエラーが発生

/lib/modules/6.1.77-v7+/build が存在しないというエラーが発生しました。このディレクトリは kernel source と呼ばれるものらしいです。

make コマンド実行結果
make ARCH=arm CROSS_COMPILE= -C /lib/modules/6.1.77-v7+/build M=/home/volumio/gnab/rtl8812au  modules
make[1]: *** /lib/modules/6.1.77-v7+/build: No such file or directory.  Stop.
make: *** [Makefile:1096: modules] Error 2

インストールされた Kernel source は次のように確認できます。Raspberry Pi 2B の場合は、バージョンの後ろに -v7+ がついたものを確認するようです。

ls コマンド実行
ls /lib/modules/
ls コマンド実行結果
5.10.103+  5.10.103-v7+  5.10.103-v7l+  6.1.77+  6.1.77-v7+  6.1.77-v7l+  6.1.77-v8+

本当に build ディレクトリが存在しないのか、次のコマンドで確かめたところ、ありませんでした。

コマンド実行
ls /lib/modules/$(uname -r)/

現在の Kernel に合った kernel source がインストールされていないようです。

試したけどダメだったこと (raspberrypi-kernel-headers)

raspberrypi-kernel-headers をインストールします。

apt installコマンド実行
sudo apt install raspberrypi-kernel-headers

インストール後、ls /lib/modules/$(uname -r)/ で確認したところ、なぜか build ディレクトリが追加されていません。
試しに /lib/modules/ の他の Kernel を確認してみると、旧バージョンの 5.10.103-v7+ の build ディレクトリは存在しますが、現バージョンの 6.1.77-v7+ は存在しませんでした。

暗礁に乗り上げました。

解決した方法 (rpi-source)

インストールされた Kernel バージョンに合わせた Kernel source をインストールしなければなりません。rpi-source を使うと解決できました。

リポジトリ: https://github.com/RPi-Distro/rpi-source

ただ、rpi-source を実行するときに遭遇したエラーは、次にまとめています。

rpi-source が失敗するときの解決方法 (ImportError, tar Error)

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?