打包针对Debian类系统的1.5应用程序

xpt*_*xpt 14 debian packaging go

最初的问题,Debian的Packaging Go应用程序是在三年前被问到的,当时Go是静态链接可执行文件.

现在,使用新的Go 1.5版本,其发行说明如下:

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

我前往Debian GoPackaging wiki,但只是发现它还没有更新到Go 1.5,也许wiki没有被维护,或者可能不是,但是,

我只是想知道,如果我想打包一个除了官方Go包之外什么都没有的工具,我应该如何利用共享库,而不是将我的应用程序构建成一个庞大的静态链接可执行文件?

我知道官方答案可能需要一些时间,但我可以等一下.

感谢Braiam的回答,我动了一下.

  • 我按照博客的步骤head -100 debian/**/*,但我的输出完全不同于博客.我的就是以下几点.任何人都知道为什么以及如何解决?

    $ head -100 debian/**/*
    3.0 (quilt)
    
    Run Code Online (Sandbox Code Playgroud)
  • 我试图跑,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
    
    Run Code Online (Sandbox Code Playgroud)
  • 我检查并确认我已安装cowbuilderpbuilder安装:

    ii cowbuilder  amd64 pbuilder running on cowdancer
    ii pbuilder  all personal package builder for Debian packages
    
    Run Code Online (Sandbox Code Playgroud)

怎么了?pbuilder我用Docker构建Debian/Ubuntu包时,这对我来说是新的.

Bra*_*iam 1

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