Сборка проекта в Platform SDK
Сборка проекта Аврора SDK
-
Перейти в директорию AuroraPlatformSDK/projects/, склонировать тестовый проект и перейти в папку проекта:
cd $HOME/AuroraPlatformSDK/projects/ && \
git clone git@os-git.omprussia.ru:external_examples/ApplicationTemplate.git && \
cd ApplicationTemplate
Команды приводятся для Unix-совместимого терминала. В Linux и macOS можно использовать стандартный терминал, в Windows необходимо использовать Git Bash.
-
Собрать тестовый проект под архитектуру armv7hl:
mb2 --target AuroraOS-<номер_релиза>-base-armv7hl build
Пример:
mb2 --target AuroraOS-4.0.2.89-base-armv7hl build
В папке $HOME/AuroraPlatformSDK/projects/test_project/build/RPMS соберётся RPM-пакет созданного демо-приложения.
-
Подписать RPM-пакет. Для подписи RPM-пакетов необходимо расположить в рабочем пространстве Platform SDK ключ и сертификаты (например, в папке AuroraPlatformSDK/cert/).
rpmsign-external sign \
-k $HOME/AuroraPlatformSDK/cert/packages_key.pem \
-c $HOME/AuroraPlatformSDK/cert/packages-cert.pem \
RPMS/ru.auroraos.ApplicationTemplate-0.1-1.armv7hl.rpm
-
Скопировать RPM-пакет на устройство:
scp RPM/ru.auroraos.ApplicationTemplate-0.1-1.armv7hl.rpm defaultuser@192.168.2.15:~
-
Перейти в режим суперпользователя и установить пакет командой
pkcon install-local
:ssh defaultuser@192.168.2.15
devel-su
pkcon install-local ru.auroraos.ApplicationTemplate-0.1-1.armv7hl.rpm
Сборка произвольного проекта под целевую архитектуру
-
Создать простой проект на C:
cat > main.c << EOF
#include <stdlib.h>
#include <stdio.h>
int main(void) {
printf("Hello, world!\n");
return EXIT_SUCCESS;
}
EOF
-
Скомпилировать и запустить:
sb2 -t AuroraOS-<номер_релиза>-base-armv7hl gcc main.c -o test_armv7hl
Пример:
sb2 -t AuroraOS-4.0.2.89-base-armv7hl gcc main.c -o test_armv7hl
-
Попробовать запустить исполняемый файл:
./test_armv7hl
bash: ./test_armv7hl: cannot execute binary file: Exec format error
-
Запустить исполняемый файл в среде таргета, под архитектуру которого была выполнена компиляция:
sb2 -t AuroraOS-4.0.2.89-base-armv7hl ./test_armv7hl
Hello, world!