原始问题 "Packaging Go application for Debian" 是三年前提出的,当时 Go 还是使用静态链接可执行文件的。
现在,随着 Go 1.5 的发布,其发行说明中写道:
链接器的变化可以将 Go 包作为共享库分发以链接到 Go 程序中,并且将 Go 包构建为档案或共享库,这些库可以被 C 程序链接或加载
我访问了 Debian GoPackaging wiki,但发现它还没有更新到 Go 1.5。也许这个维基没有被维护,也可能不是,但是,
我只想知道,如果我想打包一个仅依赖官方 Go 包的工具,我应该如何利用共享库,而不是构建一个庞大的静态链接可执行文件?
我知道官方答案可能需要一些时间,但我可以等待。
多亏了 Braiam 的回答,我又有了一点进展。
我按照博客的步骤运行了
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
我检查并验证了我已经安装了cowbuilder
和pbuilder
:
ii cowbuilder amd64 pbuilder running on cowdancer
ii pbuilder all personal package builder for Debian packages
怎么了?这个pbuilder
对我来说是新的,因为我使用Docker构建Debian/Ubuntu包。
1.5.1
。 - umläute