Raspberry Piカーネルクロスコンパイル

Raspberry Piカーネルクロスコンパイル

ここ数時間、私はArch LinuxディストリビューションとUbuntuディストリビューションでrpiカーネルをクロスコンパイルしようとしましたが、失敗したときに両方の試みで同様のエラーが発生しました。

現在、次のガイドラインに従っています。http://elinux.org/RPi_Kernel_Compilation http://ozzmaker.com/2012/11/26/how-to-cross-compile-the-kernel-for-the-raspberry-pi/

私のホームディレクトリに「linux」というフォルダがあります。コンパイルツールとrpiカーネルソースコードをそれぞれ含むtoolsとrpi-3.6.yというフォルダがあります。

「最初にビルドディレクトリがクリーンであることを確認してください」ステップに達したら、次の手順を実行します。

make mrproper 

次のエラーが発生します。

scripts/Makefile.clean:17: /home/aquacell/linux/rpi-3.6.y/arch/x86/crypto/Makefile: No such file or directory
make[2]: *** No rule to make target '/home/aquacell/linux/rpi-3.6.y/arch/x86/crypto/Makefile'. Stop.
scripts/Makefile.clean:94: recipe for target 'arch/x86/crypto' failed
make[1]: *** [arch/x86/crypto] Error 2
Makefile:1039: recipe for target '_clean_arch/x86' failed
make: *** [_clean_arch/x86] Error 2

このステップをスキップして実際のクロスコンパイルを実行することにしましたが、次のエラーが発生します。

$ make ARCH=arm CROSS_COMPILE=${CCPREFIX} oldconfig

/bin/sh: /home/aquacell/linux/rpi-3.6.y/scripts/kconfig/lxdialog/check-lxdialog.sh: No such file or directory
/bin/sh: /home/aquacell/linux/rpi-3.6.y/scripts/kconfig/lxdialog/check-lxdialog.sh: No such file or directory
/bin/sh: /home/aquacell/linux/rpi-3.6.y/scripts/kconfig/lxdialog/check-lxdialog.sh: No such file or directory
/bin/sh: /home/aquacell/linux/rpi-3.6.y/scripts/kconfig/lxdialog/check-lxdialog.sh: No such file or directory
scripts/kconfig/conf --oldconfig Kconfig
arch/arm/Kconfig:945: can't open file "arch/arm/mach-mvebu/Kconfig"
/home/aquacell/linux/rpi-3.6.y/scripts/kconfig/Makefile:33: recipe for target 'oldconfig' failed
make[1]: *** [oldconfig] Error 1
Makefile:503: recipe for target 'oldconfig' failed
make: *** [oldconfig] Error 2

誰が私が間違っているかについての洞察を提供できますか?リストにはありませんが、これに関する情報が見つからないため、欠落している非常に明確な手順や重要な部分があるようです。

ありがとうございます。

ベストアンサー1

3.6.yの最新コミットを見ると(https://github.com/raspberrypi/linux/tree/rpi-3.6.y)ファイルが存在します。ソースを再ダウンロードするか、ファイルの権限を確認してください。

Debianで最後のカーネルをコンパイルするとき、何らかの理由でソースディレクトリを/usr/src/rpi-kernelに移動する必要がありましたが、ホームディレクトリで動作させることはできませんでした。

権限が問題にならない場合は、最新バージョンのカーネルを使用したい場合があります。 githubは3.12.yが最新バージョンであるようです。

おすすめ記事