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