Как разрабатывать ПО для Wiren Board: различия между версиями
Kilpio (обсуждение | вклад) |
(Подготовка страницы к переводу) |
||
Строка 1: | Строка 1: | ||
<languages/> | |||
<translate> | |||
''Замечание'': эта статья про то, как создавать новое программное обеспечение для Wiren Board, и предназначена для программистов; | ''Замечание'': эта статья про то, как создавать новое программное обеспечение для Wiren Board, и предназначена для программистов; | ||
*стандартное программное обеспечение Wiren Board - [[Программное обеспечение Wiren Board]], | *стандартное программное обеспечение Wiren Board - [[Special:MyLanguage/Программное обеспечение Wiren Board|Программное обеспечение Wiren Board]], | ||
*для написания правил и сценариев воспользуйтесь [[Движок правил wb-rules|встроенной системой правил]]. | *для написания правил и сценариев воспользуйтесь [[Special:MyLanguage/Движок правил wb-rules|встроенной системой правил]]. | ||
=== Окружение === | === Окружение === | ||
Все контроллеры Wiren Board поставляются с полноценным Debian Linux. Архитектура процессора: armel. | Все контроллеры Wiren Board поставляются с полноценным Debian Linux. Архитектура процессора: armel. | ||
На контроллере используется libc версии 2.13. | На контроллере используется libc версии 2.13. | ||
Установка ПО рекомендуется производить с помощью пакетного менеджера Debian, и упаковывать ПО в deb-пакеты | Установка ПО рекомендуется производить с помощью пакетного менеджера Debian, и упаковывать ПО в deb-пакеты | ||
=== Общие соображения === | === Общие соображения === | ||
Контроллеры Wiren Board имеют, в зависимости от модели, от 64 до 512MB оперативной памяти. Это значит, что необходимо учитывать потребление памяти при разработке своих программ. Про то, как контролировать потребление памяти в Linux, см. сайт http://www.linuxatemyram.ru/. | Контроллеры Wiren Board имеют, в зависимости от модели, от 64 до 512MB оперативной памяти. Это значит, что необходимо учитывать потребление памяти при разработке своих программ. Про то, как контролировать потребление памяти в Linux, см. сайт http://www.linuxatemyram.ru/. | ||
=== Сборка пакетов и программ === | === Сборка пакетов и программ === | ||
Строка 18: | Строка 24: | ||
Сборку программ рекомендуется производить на компьютере с Linux, используя специальное разработческое окружение. | Сборку программ рекомендуется производить на компьютере с Linux, используя специальное разработческое окружение. | ||
Компиляция и разработка непосредственно на Wiren Board 5 не рекомендуется из-за маленького объёма RAM. | Компиляция и разработка непосредственно на Wiren Board 5 не рекомендуется из-за маленького объёма RAM. | ||
==== Разработческое окружение ==== | ==== Разработческое окружение ==== | ||
Разработческое окружение предоставляется в виде Docker-контейнера. | Разработческое окружение предоставляется в виде Docker-контейнера. | ||
Для его использования в Linux существует удобный скрипт wbdev. | Для его использования в Linux существует удобный скрипт wbdev. | ||
Строка 35: | Строка 43: | ||
Полное описание работы с окружением - в [https://github.com/contactless/wirenboard/blob/master/README.md документации]. | Полное описание работы с окружением - в [https://github.com/contactless/wirenboard/blob/master/README.md документации]. | ||
=== Другие статьи === | === Другие статьи === | ||
[[Special:MyLanguage/Сборка ядра|Сборка ядра]] | [[Special:MyLanguage/Сборка ядра|Сборка ядра]] | ||
Строка 46: | Строка 56: | ||
[[Special:MyLanguage/Пересборка Device Tree|Пересборка Device Tree]] | [[Special:MyLanguage/Пересборка Device Tree|Пересборка Device Tree]] | ||
</translate> |
Версия 13:39, 7 июня 2019
Замечание: эта статья про то, как создавать новое программное обеспечение для Wiren Board, и предназначена для программистов;
- стандартное программное обеспечение Wiren Board - Программное обеспечение Wiren Board,
- для написания правил и сценариев воспользуйтесь встроенной системой правил.
Окружение
Все контроллеры Wiren Board поставляются с полноценным Debian Linux. Архитектура процессора: armel. На контроллере используется libc версии 2.13.
Установка ПО рекомендуется производить с помощью пакетного менеджера Debian, и упаковывать ПО в deb-пакеты
Общие соображения
Контроллеры Wiren Board имеют, в зависимости от модели, от 64 до 512MB оперативной памяти. Это значит, что необходимо учитывать потребление памяти при разработке своих программ. Про то, как контролировать потребление памяти в Linux, см. сайт http://www.linuxatemyram.ru/.
Сборка пакетов и программ
Сборку программ рекомендуется производить на компьютере с Linux, используя специальное разработческое окружение. Компиляция и разработка непосредственно на Wiren Board 5 не рекомендуется из-за маленького объёма RAM.
Разработческое окружение
Разработческое окружение предоставляется в виде Docker-контейнера. Для его использования в Linux существует удобный скрипт wbdev. При использовании окружения, кросс-компиляция не нужна. Скрипт wbdev автоматически запускает соответствующие команды в виртуализованном окружении с архитектурой armel, соответствующей архитектуре процессора Wiren Board.
Сборка пакетов производится с помощью вызова wbdeb, например так:
$ wbdev chroot #запустить виртуализованное qemu сhroot окружение с Debian 7 архитектуры armel $ wbdev make # вызвать make в виртуализованном qemu chroot окружении $ wbdev cdeb # собрать пакет, написанный на C++ в виртуализованном qemu chroot окружении $ wbdev gdeb # собрать пакет, написанный на Go, с использованием кросс-компиляции Go $ wbdev ndeb # собрать архитектурно-независимый пакет, например содержащий проект на Python
Полное описание работы с окружением - в документации.
Другие статьи
Уникальные идентификаторы - для идентификации устройства, привязки софта