Raspbianのデフォルトの3.1.9+カーネルのカーネルソースはどこにありますか?


13

Raspbianのデフォルトのカーネルバージョンは3.1.9+です。余分なカーネルモジュールをコンパイルしようとすると、カーネルヘッダーファイルが見つからないため、多くのエラーメッセージが表示されます。Raspbianリポジトリを確認しましたが、3.1.9 +カーネルヘッダーとカーネルソースが見つかりませんでした。

3.2.0を検索すると、新しいカーネル(linux-image-3.2.0-3-rpi)、ヘッダー(linux-headers-3.2.0-3-rpi)、およびソース(linux-source -3.2)そして追加のモジュールをコンパイルできます。残念ながら、カーネル3.2は私にとって非常に不安定なので、このアップグレードはオプションではありません。

回答:


9

私には、Raspbianリポジトリにはカーネル3.1.9+ソースdebパッケージはありません。Alex Bradbury(asb)によると、彼らはhttps://github.com/raspberrypi/linuxに基づいてRaspbianカーネルを構築しました。このカーネルコンパイルドキュメントに基づいて、次のことを(ルートとして)行いました。

cd /usr/src
git clone --depth 1 https://github.com/raspberrypi/linux.git
ln -s linux linux-3.1.9+
cd linux
zcat /proc/config.gz > .config
ln -s /usr/src/linux /lib/modules/3.1.9+/build

その後、外部モジュールを再コンパイルできました。

いくつかのメモ:

  • Raspbianカーネルイメージよりも新しい最新バージョンのカーネルソースを複製しました。まったく同じカーネルバージョンが本当に必要な場合は、この古いバージョンの方が良いかもしれません。

  • また、念のためカーネル全体を再コンパイルしました。外部モジュールのコンパイルのみが必要な場合は、何時間もかかるため、そうしないでください。

  • 外部モジュールのMakefile(8192cu)を少し変更する必要がありました(ARCHをarmv6lではなくarmに設定)。

3
+1すてきな仕事。リポジトリに実際にヘッダーを取得する必要があります。
-Jivings


1

Stangeがどうしてそんなに難しいのか...見つけられるのは、ソースリストにあるこのパッケージだけです。

Package: linux-libc-dev
Source: linux
Version: 3.2.21-1+rpi1
Architecture: armhf
Maintainer: Debian Kernel Team <debian-kernel@lists.debian.org>
Installed-Size: 2790
Conflicts: linux-kernel-headers
Replaces: linux-kernel-headers
Provides: linux-kernel-headers
Multi-Arch: same
Priority: optional
Section: devel
Filename: pool/main/l/linux/linux-libc-dev_3.2.21-1+rpi1_armhf.deb
Size: 764146
SHA256: b75b35ccf8e7fbac582ad08af9579a23095f9dbbc9e7369430e43d584afc48fd
SHA1: e8c3bb2a30483c51ee39b525becd6e213ae9c2c7
MD5sum: 840e28237198aa137dfcdb558ef1cbf5
Description: Linux support headers for userspace development
 This package provides userspaces headers from the Linux kernel.  These
 headers are used by the installed headers for GNU glibc and other system
 libraries.

必要なツールを提供しているように見えますが、なぜというパッケージが存在しないのかわかりませんlinux-kernel-headers

ただし、パッケージアーカイブを調べると、次のことがわかります。

http://archive.raspbian.org/raspbian/pool/main/l/linux-latest/

おそらく、そのディレクトリ内のヘッダーパッケージの1つが、必要なカーネル用になります。

残念ながら、Raspbianを自分でまだインストールしていないので、TODOリストには載っていますが、現在提供できる情報はこれだけです。


考え直して、これはまだあなたが望むものとは違うバージョンですよね?
Jivings

これはカーネル3.2用でもあります。バージョン番号(3.2.21-1 + rpi1)は、質問で言及したパッケージと同じです(例:linux-headers-3.2.0-3-all_3.2.21-1 + rpi1_armhf.deb)
asalamon74

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.