Как разрабатывать ПО для Wiren Board: различия между версиями

Материал из Wiren Board
Строка 2: Строка 2:
''Про стандартное программное обеспечение Wiren Board см. статью [[Программное обеспечение Wiren Board]]. ''
''Про стандартное программное обеспечение Wiren Board см. статью [[Программное обеспечение Wiren Board]]. ''
''Для написания правил и сценариев воспользуйтесь встроенной [[Движок правил wb-rules|системой правил]].''
''Для написания правил и сценариев воспользуйтесь встроенной [[Движок правил wb-rules|системой правил]].''
''В конце этой статьи приведены ссылки на другие статьи, полезные для экспертов и разработчиков ПО''




Строка 13: Строка 14:


Контроллеры Wiren Board имеют, в зависимости от модели, от 64 до 256MB оперативной памяти. Это значит, что необходимо учитывать потребление памяти при разработке своих программ. Про то, как контроллировать потребление памяти в Linux, см. сайт http://www.linuxatemyram.ru/.
Контроллеры Wiren Board имеют, в зависимости от модели, от 64 до 256MB оперативной памяти. Это значит, что необходимо учитывать потребление памяти при разработке своих программ. Про то, как контроллировать потребление памяти в Linux, см. сайт http://www.linuxatemyram.ru/.


=== Сборка пакетов и программ ===
=== Сборка пакетов и программ ===

Версия 00:09, 1 февраля 2016

Замечание: эта статья про то, как писать и собирать новое программное обеспечение для Wiren Board и предназначено для программистов. Про стандартное программное обеспечение Wiren Board см. статью Программное обеспечение Wiren Board. Для написания правил и сценариев воспользуйтесь встроенной системой правил. В конце этой статьи приведены ссылки на другие статьи, полезные для экспертов и разработчиков ПО


Окружение

Все контроллеры Wiren Board поставляются с полноценным Debian Linux. Архитектура процессора: armel. На контроллере используется libc версии 2.13.

Установка ПО рекомендуется производить с помощью пакетного менеджера Debian, и упаковывать ПО в deb-пакеты

Общие соображения

Контроллеры Wiren Board имеют, в зависимости от модели, от 64 до 256MB оперативной памяти. Это значит, что необходимо учитывать потребление памяти при разработке своих программ. Про то, как контроллировать потребление памяти в 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

Полное описание работы с окружением - в документации.