панель |
---|
Tabs Container |
---|
| Tabs Page |
---|
| Сборка пакетов, предназначенных для процессорной архитектуры amd64, выполняется в следующем порядке: - установить инструмент
debootstrap и QEMU, выполнив команду
|
|
|
Установить инструмент debootstrap
и QEMU, выполнив команду:
Command |
---|
sudo apt install debootstrap qemu-user-static
|
Информация |
---|
title | Данная статья применима к: |
---|
|
- Astra Linux Special Edition РУСБ.10152-02 (очередное обновление 4.7)
|
...
- :
Command |
---|
sudo apt install debootstrap qemu-user-static |
|
|
|
...
- подготовить окружение
chroot , выполнив команды:
|
|
|
...
sudo debootstrap --arch=<архитектура> --components=<компоненты> <кодовое_имя_репозитория> <название_каталога_chroot> <ссылка_на_репозиторий>
Подготовка окружения сборки
...
...
Подготовка окружения сборки выполняется в следующем порядке:
...
NDK_DIR=/opt/build-environments/astralinux-1.7
REPO_URL=http://download.astralinux.ru/astra/stable/1.7_x86-64/repository-base/
|
|
|
|
...
sudo debootstrap --arch=amd64 --components=main,contrib,non-free 1.7_x86-64
|
|
|
|
...
"${NDK_DIR}" "${REPO_URL}"
|
|
|
|
echo "export LC_ALL=C" | sudo tee -a
|
|
|
|
...
...
Подготовка окружения сборки выполняется в следующем порядке:
...
Command |
---|
sudo debootstrap --arch=arm64 --components=main,contrib,non-free 4.7_arm chroot-arm64 http://download.astralinux.ru/astra/stable/4.7_arm/repository-base/
|
...
- выполнить команды монтирования каталогов в окружение
chroot :
Command |
---|
sudo mount -t proc proc ${NDK_DIR}/proc/
sudo mount -o bind /sys/ ${NDK_DIR}/sys/
sudo mount -o bind /dev/ ${NDK_DIR}/dev/
sudo mount -o bind /dev/pts ${NDK_DIR}/dev/pts
|
- добавить нужные репозитории в файл
/opt/build-environments/astralinux-1.7
|
|
|
...
...
- ;
Блок кода |
---|
deb https://download.astralinux.ru/astra/stable/ |
|
|
|
...
...
...
...
...
x86-64 main contrib non-free
deb https://download.astralinux.ru/astra/stable/ |
|
|
|
...
...
x86-64/repository-extended/ |
|
|
|
...
...
x86-64 main contrib non-free |
|
|
|
...
- подготовить окружение сборки, выполнив команды:
|
|
|
...
...
...
...
opt/build-environments/astralinux-1.7 apt update
sudo chroot
|
|
|
|
...
/opt/build-environments/astralinux-1.7 apt install devscripts quilt
|
|
|
|
...
- подготовить общий каталог для сборки пакетов, выполнив команду:
Command |
---|
sudo chown -R "${USER}:${USER}"
|
|
|
|
...
...
Сборка пакетов
...
...
Сборка пакета выполняется в следующем порядке:
...
Command |
---|
sudo mount -t proc proc chroot-amd64/proc
sudo mount -t sysfs sys chroot-amd64/sys
sudo mount -t devpts devpts chroot-amd64/dev/pts
sudo mount -o bind /dev/shm chroot-amd64/dev/shm
|
...
build-environments/astralinux-1.7/opt/
|
- собрать пакеты (на примере пакета
plasma-mobile ), выполнив команды:
|
|
|
...
...
...
...
...
Command |
---|
cd /opt/plasma-mobile-5 .24.2
mk-build-deps -i -r
dpkg-buildpackage -us -uc -ui -j$(nproc)
|
Собранный пакет будет расположен в каталоге chroot-amd64
/opt
.
Если есть необходимость очистить окружение сборки, выполнить команды:
Command |
---|
dpkg -l | grep build-deps
apt purge '*build-deps*' apt autoremove --purge
|
После сборки пакета необходимо размонтировать каталоги, выполнив команды:
Command |
---|
sudo umount chroot-amd64/proc
sudo umount chroot-amd64/sys
sudo umount chroot-amd64/dev/pts
sudo umount chroot-amd64/dev/shm
|
...
Сборка пакета выполняется в следующем порядке:
...
Command |
---|
sudo mount -t proc proc chroot-arm64/proc
sudo mount -t sysfs sys chroot-arm64/sys
sudo mount -t devpts devpts chroot-arm64/dev/pts
sudo mount -o bind /dev/shm chroot-arm64/dev/shm
|
...
Command |
---|
cp -a plasma-mobile-5.24.2 plasma-mobile_5.24.2.orig* chroot-arm64 /opt/
sudo chroot chroot-arm64
|
...
build-environments/astralinux-1.7/opt/
sudo chroot /opt/build-environments/astralinux-1.7
cd /opt/plasma-mobile-5.
|
|
|
|
...
...
ir
dpkg-buildpackage -us -uc -ui -j$(nproc)
|
|
|
|
Собранный пакет будет расположен в каталоге chroot-arm64/opt
.
...
- очистить окружение сборки,
|
|
|
...
- выполнив команды:
Command |
---|
dpkg -l | grep build-deps
apt purge '*build-deps*'
apt autoremove --purge
|
|
|
|
...
- размонтировать каталоги окружения
chroot , выполнив команды:
|
|
|
...
${NDK_DIR}/proc/
sudo umount
|
|
|
|
...
${NDK_DIR}/sys/
sudo umount
|
|
|
|
...
...
...
...
Tabs Page |
---|
| Сборка пакетов, предназначенных для процессорной архитектуры arm64, выполняется в следующем порядке: - установить инструмент
debootstrap и QEMU, выполнив команду:
|
|
|
...
sudo apt install debootstrap qemu-user-static
|
- подготовить окружение
chroot , выполнив команды:
Command |
---|
NDK_DIR=/opt/build-environments/astralinux-4.7
|
|
|
|
...
...
...
...
...
...
...
...
repository-base/
sudo debootstrap --arch=arm64 --foreign --components=main,contrib,non-free 4.7_arm "${NDK_DIR}" "${REPO_URL}"
sudo cp -av /usr/bin/qemu-aarch64-static "${NDK_DIR}/usr/bin/"
echo "export LC_ALL=C" | sudo tee -a "${NDK_DIR}/root/.bashrc"
|
- выполнить команды монтирования каталогов в окружение
chroot :
Command |
---|
sudo mount -t proc proc ${NDK_DIR}/proc/
sudo mount -o bind /sys/ ${NDK_DIR}/sys/
sudo mount -o bind /dev/ ${NDK_DIR}/dev/
sudo mount -o bind /dev/pts ${NDK_DIR}/dev/pts
|
- добавить нужные репозитории в файл
/opt/build-environments/astralinux-4.7
|
|
|
...
...
...
...
...
...
...
...
_arm/repository-base 4.7_arm main contrib non-free
deb |
|
|
|
...
...
...
...
...
...
...
_arm/repository-extended/ 4.7_arm main contrib non-free |
- подготовить окружение сборки, выполнив команды:
Command |
---|
sudo chroot /opt/build-environments/astralinux-4.7 |
|
|
|
...
/debootstrap/debootstrap --second-stage
sudo chroot /opt/build-environments/astralinux-4.7
|
|
|
|
...
apt update
sudo chroot /opt/build-environments/astralinux-4.7
|
|
|
|
...
apt install devscripts quilt
|
- подготовить общий каталог для сборки пакетов, выполнив команду:
Command |
---|
sudo chown -R "${USER}:${USER}" /opt/build-environments/astralinux-4.7
|
|
|
|
...
- собрать пакеты (на примере пакета
plasma-mobile ), выполнив команды:
Command |
---|
cp -a plasma-mobile-5.27.2 plasma-mobile_5.27.2.orig* /opt/build-environments/astralinux-4.7
|
|
|
|
...
/opt/
sudo chroot /opt/build-environments/astralinux-4.7
|
|
|
|
...
cd /opt/plasma-mobile-5.27.2
mk-build-deps -ir
|
|
|
|
...
dpkg-buildpackage -us -uc -ui -j$(nproc)
|
- очистить окружение сборки, выполнив команды:
Command |
---|
dpkg -l | grep build-deps
apt purge '*build-deps*'
apt autoremove --purge
|
- размонтировать каталоги окружения
chroot , выполнив команды:
Command |
---|
sudo umount ${NDK_DIR}/proc/
sudo umount ${NDK_DIR}/sys/
sudo umount ${NDK_DIR}/dev/
sudo umount ${NDK_DIR}/dev/pts
|
|
|
|