Требования к хосту

Оборудование

  • Раздел на жёстком диске или просто свободное место, рекомендуемый объём которого - 10 Гб и более.
  • Если оперативной памяти хост-компьютера мало (менее 4 Гб), рекомендуется создать раздел или файл подкачки. Кроме того, можно использовать zram.

Программное обеспечение

На вашей хост-системе должно быть установлено ПО из списка ниже с указанными минимальными версиями. Для большинства современных дистрибутивов Linux это не должно быть особой проблемой.

  • bash-3.2 (/bin/sh должна быть ссылкой на bash)
  • bc-1.07 (для компиляции Linux)
  • binutils-2.13
  • bison-2.7 (/usr/bin/yacc должен быть ссылкой на bison)
  • coreutils-8.1
  • diffutils-2.8.1
  • findutils-4.2.31
  • flex-2.6.4
  • gawk-4.0.1 (/usr/bin/awk должен быть ссылкой на gawk)
  • gcc-5.2 (влючающий компилятор языка С, C++)
  • grep-2.5.1a
  • gzip-1.3.12
  • linux-4.19
  • m4-1.4.10
  • make-4.0
  • ncurses-6.3 (для сборки BusyBox, Linux и U-Boot)
  • patch-2.5.4
  • perl-5.8.8
  • python-3.4
  • rsync-3.2.7 (для установки заголовков ядра на этапе сборки кросс-компилятора)
  • sed-4.1.5
  • setuptools-66.1 (для компиляции U-Boot)1
  • swig-4.0 (для компиляции U-Boot)
  • tar-1.22
  • texinfo-6.8 (для сборки binutils)
  • u-boot-tools-2023.01 (для сборки ядра Linux и работы с загрузчиком U-Boot)
  • xz-5.0
  • wget-1.23 и md5sum (для скачивания исходного кода LFA)

Внимание

Для некоторых моделей Allwinner SoC требуется сборка компонента crust, которая производится с помощью кросс-компилятора для архитектуры or1k. Здесь не приводится инструкций о его сборке, поскольку информация сразу о двух кросс-компиляторах (x86_64 -> ARM и x86_64 -> or1k) усложнит руководство и собьёт с толку тех читателей, кому or1k вовсе не нужен. Вы можете либо собрать нужный вам кросс-компилятор самостоятельно, либо использовать готовые пакеты: так, например, в репозиториях Arch Linux есть нужные пакеты с binutils и GCC для нужной архитектуры.

Некоторые дистрибутивы включают в свои репозитории метапакет, объединяющий большинство описанных выше утилит. В зависимости от дистрибутива Linux название этого пакета может меняться. Например, в Debian этот пакет называется build-essential. Рекомендуем вам установить сначала его, а потом доустановить все недостающие пакеты.

1

Это модуль языка Python, который может быть установлен с помощью пакетного менеджера pip (входит в состав Python и обычно устанавливается вместе с ним), либо с помощью пакетного менеджера вашего дистрибутива, если в его репозиториях поставляются пакеты для Python (в таком случае имя пакета, содержащего Python-модуль setuptools, может быть python-setuptools или python3-setuptools). Использование пакетного менеджера вашего дистрибутива вместо pip предпочтительнее, поскольку в таком случае setuptools будут установлены именно в систему, откуда интерпретатор Python будет иметь к нему доступ. С недавнего времени пакетный менеджер pip отключил «глобальную» установку Python-модулей в систему по умолчанию, став предпочитать установку модулей в виртуальное окружение Python.