debian 上 golang 打包工具推荐
核心工具
dh-golang:debian 官方生态中用于 go 打包的 debhelper 插件,能自动处理 go 模块依赖、构建二进制、安装到正确路径,与 gc 编译器配合良好,是当前最推荐的工具。示例 debian/rules 只需一行:%: dh $@ --with golang。适合绝大多数基于 go modules 的应用与库的打包场景。
dh-make-golang:由社区维护的“脚手架”工具,能基于 go 模块自动生成符合规范的 debian/ 目录结构(如 control、rules、copyright、changelog 等),并完成依赖解析与模板填充,显著降低手工创建打包文件的门槛,适合快速起步或向 debian 官方仓库贡献时的标准化准备。
debhelper / debuild / dpkg-buildpackage:debian 通用打包工具链。dh-golang 作为 debhelper 插件无缝集成;当你需要更“可控/简化”的构建流程时,可直接用 dpkg-buildpackage -us -uc -b 构建二进制包,或用 debuild -us -uc 走常规流程并在需要时配合 lintian 检查与覆盖策略。
gcc-go(替代编译器方案):debian 提供的 gcc 前端,生成 动态链接 的 go 二进制,更贴近传统 debian 对共享库的偏好;但对多数 go 应用而言,使用 gc + dh-golang 更直接高效,gcc-go 多用于特定合规或深度集成需求。
选型建议
快速上手示例