Автор Тема: Сборка ядра и модулей (kernel&modules building) Orange Pi2  (Прочитано 5289 раз)

Оффлайн tracert

  • Administrator
  • Житель
  • *****
  • Сообщений: 286
  • Карма: +53/-0
  • Orange Pi 2
    • Просмотр профиля
Установите виртуальную машину (VM) и проинсталлируйте на нее Linux (например Ubuntu)

Установите необходимые для кросс компиляции toolchains
 apt-get install libncurses5-dev
 apt-get install gcc-4.8-arm-linux-gnueabihf g++-4.8-arm-linux-gnueabihf
 ln -f -s /usr/bin/arm-linux-gnueabihf-gcc-4.8 /usr/bin/arm-linux-gnueabihf-gcc
 ln -f -s /usr/bin/arm-linux-gnueabihf-gcov-4.8 /usr/bin/arm-linux-gnueabihf-gcov
 ln -f -s /usr/bin/arm-linux-gnueabihf-g++-4.8 /usr/bin/arm-linux-gnueabihf-g++
 ln -f -s /usr/bin/arm-linux-gnueabihf-cpp-4.8 /usr/bin/arm-linux-gnueabihf-cpp

Скачайте SDK Allwinner H3 например отсюда
http://www.orangepi.org/downloadresources/orangepimini2/orangepimini2_f174bca071d3c45f856db7.html

Распакуйте архив в папку /home/

Скачайте патч приатаченный в данной теме, скопируйте его в корневую папку SDK /home/lichee/ и примените патч
 patch -p1 < kernel-3.4.patch

Перед началом сборки сконфигурируйте исходники
 make clean
 make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- sun8iw7p1smp_defconfig

В директории /home/lichee/linux-3.4/ создайте папку output (туда мы поместим собранные модули драйверов) и скопируйте в нее файл rootfs.cpio.gz из корневой директории /home/lichee/linux-3.4/

Можно запустить графический конфиг и сделать свои дополнительные настройки
 make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- menuconfig

не забывайте устанавливать в menuconfig

    General setup
        Kernel .config support
            Enable access to .config through /proc/config.gz

To Enable access users to .config file through /proc/config.gz

Сборка ядра. Не забудтье что u-boot должен быть уже собран так как для окончательной сборки ядра понадобится его утилита mkimage
 export PATH=$PATH:/home/bootloaderPI2/u-boot-2011.09/tools/  (указываем путь где у нас mkimage)
 make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j4 uImage

После компиляции в директории /home/lichee/linux-3.4/arch/arm/boot вы получите uImage

Теперь сборка модулей драйверов
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- modules_prepare
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- modules

И наконец инсталяция модулей в папку output
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- INSTALL_MOD_PATH=output modules_install



 
« Последнее редактирование: Январь 20, 2016, 10:05:44 am от tracert »