Bagaimana saya melakukan kompilasi silang kernel pada host Ubuntu?

16

Saya ingin lebih memahami tentang cara kerja kernel. Bagian dari ini adalah untuk mengkompilasinya sendiri. Bagaimana saya mengkompilasi silang Kernel pada host Ubuntu?

Alex Chamberlain
sumber

Jawaban:

24

Persiapan

Pertama, kita perlu menginstal prasyarat yang diperlukan. Saya menganggap Anda memiliki sudoakses.

sudo apt-get install git ncurses-dev make gcc-arm-linux-gnueabi
  • git adalah sistem kontrol versi yang digunakan oleh tim kernel Linux.
  • ncursesadalah 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-linuxdan 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
Alex Chamberlain
sumber
1
Terima kasih banyak telah memberikan alternatif untuk menggunakan crosstool-ng .
earthmeLon
Dalam kasus saya CROSS_COMPILE hanyalah awalan, jadi tindak lanjutnya harus cukup (tanpa gcc di akhir): make ARCH=arm CROSS_COMPILE=/usr/bin/arm-linux-gnueabi- -k
hazard89
0

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.

Ciro Santilli 新疆 改造 中心 法轮功 六四 事件
sumber