多平台构建¶
默认就是多平台¶
hmapdev build 默认 bundle 模式,一次产出含三个平台的单个 .hmap:
dist/myplugin_bundle.hmap
└── plugin.bin.linux.amd64
└── plugin.bin.darwin.amd64
└── plugin.bin.windows.amd64
安装时内核挑当前平台那份,重命名为 plugin.bin。
逐平台构建¶
plg.json 里声明目标:
单平台输出文件名:{name}_{os}_{arch}.hmap。
交叉编译¶
子进程插件不再需要 cgo,所以交叉编译不需要目标平台的 C 工具链 —— 这是 v1.0.0 的收益之一。
bundle 模式忽略 targets
固定构建 linux/amd64、darwin/amd64、windows/amd64。如果你只需要其中一个,
用 --no-bundle 更快。
平台能力差异¶
历史上有过一处真实的平台断层,现已消除:
- v1.0.0 之前:Windows 上插件只看到 3 个 stage 字段、且无法写回。
- v1.0.0 起:Windows 与其他平台共用同一套 RPC 实现,16 字段全可见 + 写回。
因此不必为 Windows 写条件分支 —— 除非你的插件自己用了平台专有的外部命令。