Перейти к содержанию

Навигация

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

м
 
(не показаны 2 промежуточные версии этого же участника)
Строка 1: Строка 1:
== Общая информация ==
'''Замечание:''' эта статья про то, как создавать новое программное обеспечение для Wiren Board, и предназначена для программистов:
* Читайте описание стандартного ПО Wiren Board на странице [[Программное обеспечение Wiren Board|Программное обеспечение Wiren Board]],
* Используйте [[Движок правил wb-rules|встроенную систему правил]] для написания правил и сценариев.
* Используйте [[Ansible]] для быстрого развёртывания однотипных инсталляций.


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


Все контроллеры Wiren Board поставляются с полноценным Debian Linux. Архитектура процессора: armhf (Wiren Board 6) или armel (Wiren Board 5 и раньше).
Все контроллеры Wiren Board поставляются с полноценным Debian Linux. Архитектура процессора: armhf (Wiren Board 6) или armel (Wiren Board 5 и раньше).
Строка 11: Строка 12:
Установку ПО рекомендуется производить с помощью пакетного менеджера Debian, и упаковывать ПО в deb-пакеты
Установку ПО рекомендуется производить с помощью пакетного менеджера Debian, и упаковывать ПО в deb-пакеты


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


В зависимости от комплектации контроллеры Wiren Board 6 имеют 512 или 1024 MB оперативной памяти, контроллеры Wiren Board 7 — 512, 1024 или 2048 MB. Это значит, что необходимо учитывать потребление памяти при разработке своих программ. Про то, как контролировать потребление памяти в Linux читайте на сайте http://www.linuxatemyram.ru/.
В зависимости от комплектации контроллеры Wiren Board 6 имеют 512 или 1024 MB оперативной памяти, контроллеры Wiren Board 7 — 512, 1024 или 2048 MB. Это значит, что необходимо учитывать потребление памяти при разработке своих программ. Про то, как контролировать потребление памяти в Linux читайте на сайте http://www.linuxatemyram.ru/.


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


Сборку программ рекомендуется производить на компьютере с Linux, используя специальное окружение для разработки.
Сборку программ рекомендуется производить на компьютере с Linux, используя специальное окружение для разработки.
Компиляция и разработка непосредственно на контроллерах Wiren Board не рекомендуется из-за маленького объёма оперативной памяти.
Компиляция и разработка непосредственно на контроллерах Wiren Board не рекомендуется из-за маленького объёма оперативной памяти.


==== Тулчейн (toolchain) ====  
=== Тулчейн (toolchain) ===  


Если ваша программа не имеет внешних зависимостей от библиотек операционной системы, то для её сборки можно установить тулчейн.
Если ваша программа не имеет внешних зависимостей от библиотек операционной системы, то для её сборки можно установить тулчейн.
Строка 37: Строка 38:
</syntaxhighlight>
</syntaxhighlight>


==== Окружение для разработки ====  
=== Окружение для разработки ===  


Окружение для разработки удобно использовать для сборки программ с внешними зависимостями от системных библиотек, для упаковки программ как Debian-пакетов и для удобной сборки под несколько версий Wiren Board. Это рекомендуемый и самый удобный способ.
Окружение для разработки удобно использовать для сборки программ с внешними зависимостями от системных библиотек, для упаковки программ как Debian-пакетов и для удобной сборки под несколько версий Wiren Board. Это рекомендуемый и самый удобный способ.
Строка 57: Строка 58:
Полное описание работы с окружением смотрите в [https://github.com/wirenboard/wirenboard/blob/master/README.md документации на Github].
Полное описание работы с окружением смотрите в [https://github.com/wirenboard/wirenboard/blob/master/README.md документации на Github].


=== Полезные ссылки ===  
== Полезные ссылки ==  


* [[Сборка ядра|Сборка ядра]]
* [[Сборка ядра|Сборка ядра]]
* [[Сборка образов прошивки|Сборка образов прошивки]]
* [[Сборка образов прошивки|Сборка образов прошивки]]
* [[WB_Firmware_Update_Details| Обновление прошивки для разработчиков]] — структура разделов eMMC и сборка собственного fit-файла.
* [[Уникальные идентификаторы|Уникальные идентификаторы]] — для идентификации устройства, привязки софта
* [[Уникальные идентификаторы|Уникальные идентификаторы]] — для идентификации устройства, привязки софта
* [[CryptodevATECCx08 Auth|Использование встроенного чипа ATECCx08]] — аппаратное хранилище ключей
* [[eMMC flash storage wear level|Узнать степень износа внутреннего накопителя]]  
* [[eMMC flash storage wear level|Узнать степень износа внутреннего накопителя]]  
* [[Пересборка Device Tree|Пересборка Device Tree]]
* [[Пересборка Device Tree|Пересборка Device Tree]]