Repository navigation
[Bug] Android/Termux:0.1.6-alpha.2 完全无法启动 —— host preparation 依赖 node-addon-require-builtin,而它没有 android-arm64 绑定 #6982
Closed
maxwell-feng
started this conversation in
General
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
环境
aarch64,两台设备(Android 14 与 Android 16 构建),Node v26.4.0(ABIv147)dsh-v0.1.6-alpha.2(commitddefc45fbc),源码 checkout,profilewebnode --import tsx/esm apps/cli/src/bin.ts web现象
在 Android/Termux 上,0.1.6-alpha.2 完全无法启动,
boot()在 host preparation 阶段就中止:原生加载尝试(摘自抛出的诊断信息):
这不是"功能降级":没有任何启动方式能走到插件树,profile 起不来,会话也开不了。
根因
这个依赖本身是 0.1.6-alpha.2 新引入的:commit
6aa2e4633c"feat(boot): add profile resolution modes"(2026-09-13)让 host preparation 通过packages/boot/app-boot/src/profile-resolution/resolver.ts依赖原生 addonnode-addon-require-builtin。因此失败与resolutionMode无关 —— 它在 resolver 加载时发生,早于模式生效。node-addon-require-builtin@0.1.6只发布了桌面平台的预编译包:没有 android 目标。Termux 是
linux-android(bionic),linux-arm64-gnu预编译包同样加载不了。官方退路(上面两条
local-build路径)在用户侧无法产出:发布 tarball 只含lib/与README.md(没有原生源码或构建配置),且 workspace 明确禁止其构建脚本(pnpm-workspace.yaml→allowBuilds: node-addon-require-builtin: false)。影响范围:在更早的
flock/link(2)问题时期,安卓靠社区补丁仍可用(dsh runs on Termux (Android) — with 5 small patches #1588);自 0.1.6-alpha.2 起变成硬性启动失败,而这个原生 addon 现在位于所有启动方式的关键路径上。诉求
android-arm64预编译包(node-addon-require-builtin以及node-addon-*家族其余成员),或明确声明 Android/Termux 不受支持,免得大家继续在这上面耗时间。link),而不是让 host preparation 在任何启动方式下直接中止 —— 现在一个可选原生依赖就能让整个应用在它没有发布的平台上起不来。clang、cmake都可用:pkg install clang cmake make python),同时放开allowBuilds。目前allowBuilds是禁止的,这条退路永远不可能成功。关联
flock is not supported on android-arm64(更早的 addon,同一类"无 Android 支持"问题)如果需要,我可以在两台 Termux 设备(aarch64,Node v26.4.0)上验证候选预编译包或补丁,并回报结果。
All reactions