Persiapan
Pertama, kita perlu menginstal prasyarat yang diperlukan. Saya menganggap Anda memiliki sudo
akses.
sudo apt-get install git ncurses-dev make gcc-arm-linux-gnueabi
git
adalah sistem kontrol versi yang digunakan oleh tim kernel Linux.
ncurses
adalah perpustakaan untuk membangun menu konsol. Itu perlu untuk menuconfig
.
make
menjalankan kompilasi untuk kita.
gcc-arm-linux-gnueabi
adalah cross-compiler.
Selanjutnya, kita perlu mengambil sumbernya, jalankan:
git clone https://github.com/raspberrypi/linux raspberrypi-linux
cd raspberrypi-linux
Ini akan mengkloning kode sumber ke direktori yang dipanggil raspberrypi-linux
dan mengubahnya.
Kompilasi
Pertama-tama kita perlu memindahkan file konfigurasi dengan menjalankan
cp arch/arm/configs/bcmrpi_cutdown_defconfig .config
Kemudian konfigurasikan kernel build
make ARCH=arm CROSS_COMPILE=/usr/bin/arm-linux-gnueabi- oldconfig
Opsional: Sesuaikan bangunan menggunakan menuconfig
make ARCH=arm CROSS_COMPILE=/usr/bin/arm-linux-gnueabi- menuconfig
Kemudian jalankan kompilasi
make ARCH=arm CROSS_COMPILE=/usr/bin/arm-linux-gnueabi- -k
Referensi
make ARCH=arm CROSS_COMPILE=/usr/bin/arm-linux-gnueabi- -k
Saya pikir Alex benar tetapi gcc-arm-linux-gnueabi dikompilasi untuk arm cpus tanpa perangkat floating point unit. Anda dapat menemukan cross-compiler dengan dukungan armhf di: https://github.com/raspberrypi/tools dan tutorial yang bagus untuk memulai di sini: http://hertaville.com/2012/09/28/development-environment- raspberry-pi-cross-compiler /
sumber
Dokumentasi resmi
https://www.raspberrypi.org/documentation/linux/kernel/building.md ( GitHub )
Saya akan merekomendasikan Anda hanya mengikuti langkah-langkah di sana, atau mengirim permintaan tarik jika ada sesuatu yang ketinggalan jaman atau tidak cukup jelas: instruksi tersebut adalah yang paling mungkin benar dan mutakhir karena merupakan bagian dari dokumentasi resmi proyek.
sumber