npm WARN config global-style This option has been deprecated in favor of `--install-strategy=shallow` npm WARN EBADENGINE Unsupported engine { npm WARN EBADENGINE package: 'zigbee2mqtt@2.6.0', npm WARN EBADENGINE required: { node: '^20 || ^22 || ^24' }, npm WARN EBADENGINE current: { node: 'v18.17.1', npm: '9.6.7' } npm WARN EBADENGINE } npm WARN EBADENGINE Unsupported engine { npm WARN EBADENGINE package: 'rimraf@6.0.1', npm WARN EBADENGINE required: { node: '20 || >=22' }, npm WARN EBADENGINE current: { node: 'v18.17.1', npm: '9.6.7' } npm WARN EBADENGINE } npm WARN EBADENGINE Unsupported engine { npm WARN EBADENGINE package: 'zigbee2mqtt-frontend@0.9.19', npm WARN EBADENGINE required: { node: '>=20.11' }, npm WARN EBADENGINE current: { node: 'v18.17.1', npm: '9.6.7' } npm WARN EBADENGINE } npm WARN EBADENGINE Unsupported engine { npm WARN EBADENGINE package: 'zigbee2mqtt-windfront@1.8.1', npm WARN EBADENGINE required: { node: '^20.19.0 || >=22.12.0' }, npm WARN EBADENGINE current: { node: 'v18.17.1', npm: '9.6.7' } npm WARN EBADENGINE } npm WARN EBADENGINE Unsupported engine { npm WARN EBADENGINE package: 'glob@11.0.3', npm WARN EBADENGINE required: { node: '20 || >=22' }, npm WARN EBADENGINE current: { node: 'v18.17.1', npm: '9.6.7' } npm WARN EBADENGINE } npm WARN EBADENGINE Unsupported engine { npm WARN EBADENGINE package: '@serialport/parser-delimiter@13.0.0', npm WARN EBADENGINE required: { node: '>=20.0.0' }, npm WARN EBADENGINE current: { node: 'v18.17.1', npm: '9.6.7' } npm WARN EBADENGINE } npm WARN EBADENGINE Unsupported engine { npm WARN EBADENGINE package: '@serialport/stream@13.0.0', npm WARN EBADENGINE required: { node: '>=20.0.0' }, npm WARN EBADENGINE current: { node: 'v18.17.1', npm: '9.6.7' } npm WARN EBADENGINE } npm WARN EBADENGINE Unsupported engine { npm WARN EBADENGINE package: 'zigbee-on-host@0.1.13', npm WARN EBADENGINE required: { node: '^20.19.0 || >=22.12.0' }, npm WARN EBADENGINE current: { node: 'v18.17.1', npm: '9.6.7' } npm WARN EBADENGINE } npm WARN EBADENGINE Unsupported engine { npm WARN EBADENGINE package: 'jackspeak@4.1.1', npm WARN EBADENGINE required: { node: '20 || >=22' }, npm WARN EBADENGINE current: { node: 'v18.17.1', npm: '9.6.7' } npm WARN EBADENGINE } npm WARN EBADENGINE Unsupported engine { npm WARN EBADENGINE package: 'minimatch@10.0.3', npm WARN EBADENGINE required: { node: '20 || >=22' }, npm WARN EBADENGINE current: { node: 'v18.17.1', npm: '9.6.7' } npm WARN EBADENGINE } npm WARN EBADENGINE Unsupported engine { npm WARN EBADENGINE package: 'path-scurry@2.0.0', npm WARN EBADENGINE required: { node: '20 || >=22' }, npm WARN EBADENGINE current: { node: 'v18.17.1', npm: '9.6.7' } npm WARN EBADENGINE } npm WARN EBADENGINE Unsupported engine { npm WARN EBADENGINE package: '@isaacs/brace-expansion@5.0.0', npm WARN EBADENGINE required: { node: '20 || >=22' }, npm WARN EBADENGINE current: { node: 'v18.17.1', npm: '9.6.7' } npm WARN EBADENGINE } npm WARN EBADENGINE Unsupported engine { npm WARN EBADENGINE package: '@isaacs/balanced-match@4.0.1', npm WARN EBADENGINE required: { node: '20 || >=22' }, npm WARN EBADENGINE current: { node: 'v18.17.1', npm: '9.6.7' } npm WARN EBADENGINE } npm WARN EBADENGINE Unsupported engine { npm WARN EBADENGINE package: 'lru-cache@11.2.1', npm WARN EBADENGINE required: { node: '20 || >=22' }, npm WARN EBADENGINE current: { node: 'v18.17.1', npm: '9.6.7' } npm WARN EBADENGINE } npm WARN EBADENGINE Unsupported engine { npm WARN EBADENGINE package: '@serialport/parser-readline@13.0.0', npm WARN EBADENGINE required: { node: '>=20.0.0' }, npm WARN EBADENGINE current: { node: 'v18.17.1', npm: '9.6.7' } npm WARN EBADENGINE } npm ERR! code 1 npm ERR! path /immortalwrt/master/build_dir/target-arm_cortex-a15+neon-vfpv4_musl_eabi/node-zigbee2mqtt-2.6.0/node_modules/zigbee-herdsman/node_modules/@serialport/bindings-cpp npm ERR! command failed npm ERR! command sh -c node-gyp-build npm ERR! gyp info it worked if it ends with ok npm ERR! gyp info using node-gyp@9.3.1 npm ERR! gyp info using node@18.17.1 | linux | x64 npm ERR! gyp info find Python using Python version 3.11.13 found at "/immortalwrt/master/staging_dir/hostpkg/bin/python3" npm ERR! gyp WARN read config.gypi ENOENT: no such file or directory, open '/immortalwrt/master/staging_dir/target-arm_cortex-a15+neon-vfpv4_musl_eabi/usr/include/node/config.gypi' npm ERR! gyp info spawn /immortalwrt/master/staging_dir/hostpkg/bin/python3 npm ERR! gyp info spawn args [ npm ERR! gyp info spawn args '/usr/lib/node_modules/npm/node_modules/node-gyp/gyp/gyp_main.py', npm ERR! gyp info spawn args 'binding.gyp', npm ERR! gyp info spawn args '-f', npm ERR! gyp info spawn args 'make', npm ERR! gyp info spawn args '-I', npm ERR! gyp info spawn args '/immortalwrt/master/build_dir/target-arm_cortex-a15+neon-vfpv4_musl_eabi/node-zigbee2mqtt-2.6.0/node_modules/zigbee-herdsman/node_modules/@serialport/bindings-cpp/build/config.gypi', npm ERR! gyp info spawn args '-I', npm ERR! gyp info spawn args '/usr/lib/node_modules/npm/node_modules/node-gyp/addon.gypi', npm ERR! gyp info spawn args '-I', npm ERR! gyp info spawn args '/immortalwrt/master/staging_dir/target-arm_cortex-a15+neon-vfpv4_musl_eabi/usr/common.gypi', npm ERR! gyp info spawn args '-Dlibrary=shared_library', npm ERR! gyp info spawn args '-Dvisibility=default', npm ERR! gyp info spawn args '-Dnode_root_dir=/immortalwrt/master/staging_dir/target-arm_cortex-a15+neon-vfpv4_musl_eabi/usr/', npm ERR! gyp info spawn args '-Dnode_gyp_dir=/usr/lib/node_modules/npm/node_modules/node-gyp', npm ERR! gyp info spawn args '-Dnode_lib_file=/immortalwrt/master/staging_dir/target-arm_cortex-a15+neon-vfpv4_musl_eabi/usr/$(Configuration)/node.lib', npm ERR! gyp info spawn args '-Dmodule_root_dir=/immortalwrt/master/build_dir/target-arm_cortex-a15+neon-vfpv4_musl_eabi/node-zigbee2mqtt-2.6.0/node_modules/zigbee-herdsman/node_modules/@serialport/bindings-cpp', npm ERR! gyp info spawn args '-Dnode_engine=v8', npm ERR! gyp info spawn args '--depth=.', npm ERR! gyp info spawn args '--no-parallel', npm ERR! gyp info spawn args '--generator-output', npm ERR! gyp info spawn args 'build', npm ERR! gyp info spawn args '-Goutput_dir=.' npm ERR! gyp info spawn args ] npm ERR! gyp: /immortalwrt/master/staging_dir/target-arm_cortex-a15+neon-vfpv4_musl_eabi/usr/common.gypi not found (cwd: /immortalwrt/master/build_dir/target-arm_cortex-a15+neon-vfpv4_musl_eabi/node-zigbee2mqtt-2.6.0/node_modules/zigbee-herdsman/node_modules/@serialport/bindings-cpp) while reading includes of binding.gyp while trying to load binding.gyp npm ERR! gyp ERR! configure error npm ERR! gyp ERR! stack Error: `gyp` failed with exit code: 1 npm ERR! gyp ERR! stack at ChildProcess.onCpExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:325:16) npm ERR! gyp ERR! stack at ChildProcess.emit (node:events:514:28) npm ERR! gyp ERR! stack at ChildProcess._handle.onexit (node:internal/child_process:291:12) npm ERR! gyp ERR! System Linux 5.4.0-216-generic npm ERR! gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild" npm ERR! gyp ERR! cwd /immortalwrt/master/build_dir/target-arm_cortex-a15+neon-vfpv4_musl_eabi/node-zigbee2mqtt-2.6.0/node_modules/zigbee-herdsman/node_modules/@serialport/bindings-cpp npm ERR! gyp ERR! node -v v18.17.1 npm ERR! gyp ERR! node-gyp -v v9.3.1 npm ERR! gyp ERR! not ok npm ERR! A complete log of this run can be found in: /immortalwrt/master/tmp/npm-cache-EpPbwt3HR7/_logs/2025-09-06T16_46_13_902Z-debug-0.log make[2]: *** [Makefile:103: /immortalwrt/master/build_dir/target-arm_cortex-a15+neon-vfpv4_musl_eabi/node-zigbee2mqtt-2.6.0/.built] Error 1 time: package/feeds/packages/node-zigbee2mqtt/compile#5.79#1.05#11.24