14

最初的问题,为 Debian 打包 Go 应用程序,是在三年前提出的,当时 Go 静态链接可执行文件。

现在,有了新的 Go 1.5 版本,它的发行说明说,

对链接器的更改允许将 Go 包分发为共享库以链接到 Go 程序,并将 Go 包构建到可以链接到 C 程序或由 C 程序加载的存档或共享库中

我去了Debian GoPackaging wiki,但发现它还没有更新到 Go 1.5,也许 wiki 没有维护,或者没有,但是,

我只想知道,如果我想打包一个只依赖于官方 Go 包的工具,我应该如何利用共享库,而不是将我的应用程序构建成一个巨大的静态链接可执行文件?

我知道官方的答案可能需要一些时间,但我可以等待。

感谢 Braiam 的回答,我走得更远了。

  • 我跟着博客到 step head -100 debian/**/*,但我的输出与博客的完全不同。我的只是以下。任何人都知道为什么以及如何解决?

    $ head -100 debian/**/*
    3.0 (quilt)
    
  • 我试图运行gbp buildpackage --git-pbuilder但遇到错误:

    gbp:info: Building with (cowbuilder) for sid
    Base directory /var/cache/pbuilder/base.cow does not exist
    gbp:error: 'git-pbuilder' failed: it exited with 1
    
  • 我检查并确认我已经安装cowbuilderpbuilder安装了:

    ii cowbuilder  amd64 pbuilder running on cowdancer
    ii pbuilder  all personal package builder for Debian packages
    

怎么了?当我使用 Docker 构建 Debian/Ubuntu 软件包时,pbuilder对我来说是新事物。

4

1 回答 1

1

最简单的方法是使用dh-make-golang并验证/更正自动生成的文件。否则,您必须遵循Debian 打包指南并创建debian/*目录并编辑控制和规则文件以匹配示例

于 2016-01-14T22:00:18.797 回答