Сборка и запуск Zigbee2mqtt для OpenWRT
· 5 мин. чтения
Инструкция по сборке Zigbee2MQTT под musl/aarch64 на хост-машине с Docker и запуску на OpenWrt.
Почему это нетривиально
OpenWrt использует musl libc вместо стандартного glibc. Это означает:
- Официальные бинарники Node.js с nodejs.org (glibc) не запустятся
- Пакет
nodeв фидах OpenWrt — только host-инструмент для сборки (PKG_HOST_ONLY=1), в прошивку не попадает - Entware для aarch64 не содержит Node.js
- Нативные модули (
@serialport/bindings-cpp) нужно компилировать под musl
Решение: собирать всё в Docker-контейнере на базе Alpine Linux (тоже использует musl).
Требования
Железо
Проверено на NAPI-C (rk3308\512Мб\4Гб Nand) c прошивкой OpenWRT (NapiWRT). Репозиторий: https://github.com/lab240/napi-openwrt-build/