mirror of
https://gitcode.com/JianFeeeee/homeagent-sdk.git
synced 2026-09-19 16:40:42 +00:00
`build.sh all all` 此前必然失败:示例的跨平台是由 hmapdev 的 `--target` 完成的, 被执行的进程必须在当前机器上跑,而 build_examples 传的是**目标平台**那把工具链 → darwin 目标下拿 darwin 二进制在 linux 上跑,报 "cannot execute binary file: Exec format error"(linux/amd64 之后的所有目标全灭)。 - 宿主平台在脚本顶部、**export GOOS/GOARCH 之前**取定(`go env GOOS` 在 export 之后会返回目标平台,这正是原 bug 的成因),并用 `env -u GOOS -u GOARCH` 兜底; - `all` 的第一个目标可能不是宿主平台 → 缺宿主工具链时先补建一次; - 宿主工具链仍缺失则**显式报错并给出该跑哪条命令**,不再静默退化成 Exec format error。 验证(VERSION=1.2.0 bash package/build.sh all all): linux/amd64、linux/arm64、darwin/amd64、darwin/arm64 四个目标示例产物均 17/17 成功 (修复前 darwin 两个目标 0/17);windows 目标仍按设计显式拒绝 (协议 2 的统一共享内存区未移植 Windows,走 WSL)。