Gömülü Linux
  • Giriş
  • Linux Çekirdeği
    • Gömülü Sistemlerdeki Kullanımı
    • Geliştirme Süreci ve Versiyonlar
    • Kod Sözdizim Rehberi
    • Konfigürasyon Süreci ve Kbuild Sistemi
    • Derleme ve Çapraz Derleme
    • Initramfs İmajının Eklenmesi
    • U-boot İmajı Haline Getirilmesi
  • Gömülü Sistemlerde Boot Yükleyiciler
    • U-boot
    • RedBoot
    • ARM Mimarisinde Açılış Süreci
  • Linux Açılış Süreci
    • Kernel Açılış Süreci
    • Kullanıcı Kipine Geçiş - Init Süreci
  • Kök Dosya Sistemi Oluşturma
  • Initramfs İle Erken Kullanıcı Kipi
  • Devtmpfs Dosya Sistemi
  • NfsRoot Çalışma Yöntemi
  • Çapraz Derleme ve Gerekli Ekipmanlar
  • NOR, NAND, eMMC ve Flash Tabanlı Depolama
  • Memory Technology Device - MTD Katmanı
  • Unsorted Block Images - UBI Katmanı
  • Gömülü Sistemlerde Kullanılan Dosya Sistemleri
    • JFFS2 Dosya Sistemi
    • YAFFS2 Dosya Sistemi
    • UBIFS Dosya Sistemi
    • Cramfs Dosya Sistemi
    • Squashfs Dosya Sistemi
    • Minix Dosya Sistemi
    • FAT Dosya Sistemi
    • Ext2,3,4 Dosya Sistemi
  • Watchdog Kullanımı
  • CPU Frequency Scaling
  • Buildroot
  • Android Platformu
    • Geliştirme Ortamının Hazırlanması
    • İnşa Süreci
  • Sistem Çağrıları
  • I2C Protokolü
    • I2C Protokolünün Tanıtılması
    • Linux Altında I2C İşlemleri
    • Board Seçimi ve İlk İşlemler
    • Sıcaklık Sensörünün Seçilmesi
    • Sıcaklık Değerinin Yazılımsal Olarak Elde Edilmesi
  • Strace Kullanımı
  • GNU Build Sistemi Araçları
    • Make
    • Autoconf, Automake
  • Orange Pi Zero
    • Orange Pi Zero Teknik Özellikleri
    • Gerekli Araçların Elde Edilmesi
    • U-boot Derleme Süreci
    • Kernel Derleme Süreci
    • Wifi Desteği - Problemli Senaryo Örneği
    • Dosya Sisteminin Hazırlanması
    • SD Kartın Hazırlanması
    • Cihazın Açılması
  • Raspberry Pi
    • Raspberry Pi 2 Teknik Özellikleri
    • Açılış Süreci
    • Gerekli Araçların Elde Edilmesi
    • Kernel Derleme Süreci
    • U-boot Derleme Süreci
    • Dosya Sisteminin Hazırlanması
    • Cihazın Açılması
    • NFS Root Çalışma
    • Sistem Konfigürasyonu
    • Raspberry Pi 3
  • Board Spesifik Kılavuzlar
    • Hawkboard
    • Olimex A20
    • TI DM6446 EVM
    • BeagleBoard
    • BeagleBoneBlack
    • Savage Board
  • EKLER
    • Seri Konsol Kullanımı
    • TFTP Sunucu Kurulumu
    • NFS Sunucu Kurulumu
    • TI işlemcilerinde DSP kullanımı
      • C6Run
      • DSP Testi
    • Ubuntu Sanal Makine Performansı
Powered by GitBook
On this page

Was this helpful?

  1. Orange Pi Zero

Kernel Derleme Süreci

Orange Pi Zero için kernel kodunun kararlı son hali aşağıdaki gibi klonlanabilir.

$ cd /opt/orangepi
$ git clone --depth 1 git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git

Kernel kodunu aşağıdaki gibi derleyebiliriz, öngörülen ayar dosyası üzerinde bu aşamada bir değişiklik yapmayacağız.

$ cd linux-stable
$ make ARCH=arm clean
$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- sunxi_defconfig
$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- zImage -j4

Bu işlem sonunda arch/arm/boot/ altında kernel imaj dosyasızImage oluşmuş olmalıdır.

Kernel modülleri ise ayrı derlenmelidir. Daha sonra ayar dosyası üzerinde değişiklik yapılarak istenilen özellikler modül olarak derlenebilir veya tüm özellikler kernel koduna dahil edilebilir. Kernel modülleri aşağıdaki gibi derlenebilir.

$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- modules -j4

Bu işlem sonunda .ko uzantılı kernel modülleri oluşacaktır. Bu modüller hedef dosya sisteminde uygun bir dizin altında bulunmalıdır. Cihaz için dosya sistemini hazırladığımız bölümde kernel modüllerinin nasıl kopyalanması gerektiğine bakacağız.

Son olarak kartın donanımına ait parametreleri barındıran .dtb dosyasını üretmeliyiz. Bu işlem aşağıdaki gibi yapılabilir.

$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- dtbs -j4

Bu işlem sonunda arch/arm/boot/dts/sun8i-h2-plus-orangepi-zero.dtb dosyası oluşacaktır. Bu dosyayı da kernel imajı ve modüllerle birlikte SD kart üzerinde /boot dizini altına taşıyacağız.

Bu aşamadan sonra dosya sistemini oluşturmaya geçebiliriz.

NOT: Dokümanı hazırladığımız sırada OrangePi Zero ethernet ve wifi modülleri mainline kernel (4.13) içerisinde desteklenmiyordu. Konu ile ilgili ayrıntı için sonraki bölümü inceleyiniz.

PreviousU-boot Derleme SüreciNextWifi Desteği - Problemli Senaryo Örneği

Last updated 5 years ago

Was this helpful?