How To Build Linux Kernel: различия между версиями

Отметить эту версию для перевода
(Подготовка страницы к переводу)
(Отметить эту версию для перевода)
Строка 1: Строка 1:
<languages/>
<languages/>
<translate>
<translate>
<!--T:1-->
Вам может понадобиться собрать своё ядро (например, чтобы включить нужные модули). Чтобы собрать ядро для Wiren Board, нужно взять использовать специальный репозиторий, содержащий ядро, адаптированное для Wiren Board.
Вам может понадобиться собрать своё ядро (например, чтобы включить нужные модули). Чтобы собрать ядро для Wiren Board, нужно взять использовать специальный репозиторий, содержащий ядро, адаптированное для Wiren Board.




<!--T:2-->
'''0.''' Сборку ядра следует проводить на вашем настольном компьютере под управлением Linux (не на Wiren Board - теоретически это возможно, но потребует несколько гигабайт свободного места, и займёт много времени).
'''0.''' Сборку ядра следует проводить на вашем настольном компьютере под управлением Linux (не на Wiren Board - теоретически это возможно, но потребует несколько гигабайт свободного места, и займёт много времени).
Убедитесь, что у вас установлен git (http://en.wikipedia.org/wiki/Git_%28software%29). Если нет, установите его:<pre>
Убедитесь, что у вас установлен git (http://en.wikipedia.org/wiki/Git_%28software%29). Если нет, установите его:<pre>
Строка 15: Строка 17:




<!--T:3-->
'''1.''' Скачайте набор скриптов, который упрощает сборку:
'''1.''' Скачайте набор скриптов, который упрощает сборку:
<pre>
<pre>
Строка 22: Строка 25:
'''2.''' Склонируйте и инициализируйте репозиторий Linux.
'''2.''' Склонируйте и инициализируйте репозиторий Linux.


<!--T:4-->
Репозиторий можно склонировать с использованием https (если у вас нет аккаунта на github.com):
Репозиторий можно склонировать с использованием https (если у вас нет аккаунта на github.com):
<pre>
<pre>
Строка 27: Строка 31:
</pre>
</pre>


<!--T:5-->
или ssh, если у вас есть аккаунт:
или ssh, если у вас есть аккаунт:
<pre>
<pre>
Строка 32: Строка 37:
</pre>
</pre>


<!--T:6-->
'''3.'''  Инициализируйте внешние модули:
'''3.'''  Инициализируйте внешние модули:
<pre>
<pre>
Строка 43: Строка 49:
</pre>
</pre>


==Сборка==
==Сборка== <!--T:7-->


<!--T:8-->
Сборка ядра с упаковкой в tar.gz архивы:
Сборка ядра с упаковкой в tar.gz архивы:
  ./build.sh
  ./build.sh
Строка 51: Строка 58:




== Установка на Wiren Board ==
== Установка на Wiren Board == <!--T:9-->


  export kernel_version=3.19.0-imxv5-x0.1
  <!--T:10-->
export kernel_version=3.19.0-imxv5-x0.1
(строку версии стоит взять из вывода сборочных скриптов из предыдущего пункта)
(строку версии стоит взять из вывода сборочных скриптов из предыдущего пункта)


<!--T:11-->
Скрипты:  
Скрипты:  
* tools/copy_kernel_latest_deb.sh - копирует и устанавливает последний deb-пакет с ядром. Аргумент: папка с rootfs (или примонтированный eMMC/microSD накопитель Wiren Board)
* tools/copy_kernel_latest_deb.sh - копирует и устанавливает последний deb-пакет с ядром. Аргумент: папка с rootfs (или примонтированный eMMC/microSD накопитель Wiren Board)
Строка 61: Строка 70:




== Работа с конфигом ядра ==
== Работа с конфигом ядра == <!--T:12-->




=== Редактирование конфига ядра ===
=== Редактирование конфига ядра === <!--T:13-->


<!--T:14-->
cd KERNEL
cd KERNEL
  make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- menuconfig
  make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- menuconfig
Строка 72: Строка 82:




=== Список изменений относительно стандартного конфига ===
=== Список изменений относительно стандартного конфига === <!--T:15-->


  ./config_diff.sh
  <!--T:16-->
./config_diff.sh




=== Применение изменений в стандартный конфиг ===
=== Применение изменений в стандартный конфиг === <!--T:17-->


<!--T:18-->
Этот пункт нужен, чтобы изменить стандартный конфиг Wiren Board, например чтобы отправить патч или pull request.
Этот пункт нужен, чтобы изменить стандартный конфиг Wiren Board, например чтобы отправить патч или pull request.
  cd KERNEL
  cd KERNEL


  make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- savedefconfig
  <!--T:19-->
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- savedefconfig


  cp defconfig ./arch/arm/configs/mxs_wirenboard_defconfig
  <!--T:20-->
cp defconfig ./arch/arm/configs/mxs_wirenboard_defconfig
</translate>
</translate>
12 063

правки