Компиляция ОС или ядра
Системные требования для компиляции
Скрипт для сборки Linux orangepi-build работает только на Ubuntu 22.04. Поэтому убедитесь, что на компьютере установлена нужная операционная система:
lsb_release -a
Если на компьютере установлена система Windows, вы можете рассмотреть возможность использования VirtualBox или VMware для установки виртуальной машины Ubuntu 22.04. Для загрузки установочного образа для версии Ubuntu 22.04 amd64 можно использовать следующие ссылки:
- https://releases.ubuntu.com/jammy/ubuntu-22.04.5-desktop-amd64.iso или
- https://mirrors.tuna.tsinghua.edu.cn/ubuntu-releases/22.04/ubuntu-22.04.5-desktop-amd64.iso или
- https://repo.huaweicloud.com/ubuntu-releases/22.04/ubuntu-22.04.5-desktop-amd64.iso
Скрипт orangepi-build является модифицированной версией системы компиляции сборки armbian. С помощью orangepi-build можно скомпилировать несколько версий образов Linux. Для загрузки скрипта на Ваш компьютер требуется git, который можно установить следующей командой:
sudo apt-get update && sudo apt-get install -y git
После этого клонируйте ветку next репозитория:
git clone https://github.com/orangepi-xunlong/orangepi-build.git -b next
или
git clone https://gitee.com/orangepi-xunlong/orangepi-build.git -b next
После загрузки orangepi-build вы получите следующие файлы и папки: a. build.sh: Скрипт запуска компиляции b. external: Папка с файлами конфигурации, необходимыми для компиляции образов. Так же содержит специфические скрипты, исходный код для некоторых программ и т. д. c. LICENSE: Файл лицензии GPL 2 d. README.md: Документация orangepi-build e. scripts: Скрипты для компиляции образов Linux

Папка Orangepi-build не содержит исходного кода ядра Linux и инструментов кросс-компиляции. Это нормально. Адреса для загрузки указаны в конфигурационных файлах. Если при работе скрипта обнаруживается, что нужные файлы недоступны локально, он автоматически перейдет в соответствующее место для их загрузки.
Инструменты кросс-компиляции
Все инструменты для кросс-компиляции хранятся в папке Toolchains, которой нет среди загуженных с репозитория ресурсов. Папка автоматически появится после запуска скрипта build.sh, который проверит существования всей цепочки скриптов и если чего то не хватает, то запусит автоматическую загрузку всех инструментов в папку Toolchains. Если все инструменты уже скачаны, то повторная загрузка не происходит.
Компиляция ядра или ОС
-
Изменить репозитории исходного кода на официальные
Отредактировать файл /orangepi-build/scripts/configeration.sh

-
Запустить скрипт build.sh с правами sudo:
sudo ./orangepi-build/build.sh -
В меню выбрать со списком плат выбрать orangepi6plus

-
В следующем меню выбрать, что нужно скомпилировать

- Kernell packages - пакеты ядра
- Rootfs and all deb packages - корневая файловая система с необходимыми для работы пакетами
- Full OS image for flashing - готовый образ операционной системы для записи на диск
-
Теперь нужно выбрать как конфигурировать ядро

- Do not change the kernell configuration - не изменять конфигурацию ядра
- Show a kernell configuration menu before compilation - показать меню конфигурации ядра перед компиляцией
-
Далее появится меню выбора версии ядра. Для примера рассмотрим вариант сборки Ubuntu 24.04

- current Recommended. Come with best support - ядро 6.1 (Рекомендуется)
- next Use the latest kernell - ядро 6.6 (Последняя версия ядра)
-
В следующем меню следует выбрать операционную систему

- bookwarm Debian 12 Bookwarm - OS Debian 12
- noble Ubuntu noble 24.04 LTS - OS Ubuntu 24.04
-
Далее следует выбрать вариант с рабочим столом или без него

- no Image with console interface (server) - без рабочего стола (серверная версия)
- yes Image with desktop environment - с рабочим столом
-
Следующее меню без выбора, поэтому просто нажмите Enter


-
В следующем окне можно выбрать программы, которые будут добавленны в образ ОС

-
В окне Kernel Configuration можете настроить модули ядра или оставить настройки по умолчанию. Для справки по настройкам воспользуйтесь описанием конфигурации ядра

После настройки параметров нажмите дважды клавишу Esc. В открывшемся меню выберите Yes
