我一直在考虑在debian包中构建一个go项目。
我查看了黄金刚,并且在我的存储库中设置了一个漂亮而闪亮的debian文件夹。但是,当我尝试使用gbp buildpackage --git-pbuilder时,由于找不到所有的依赖项,它会出错。当dh-make-golang从我的项目的git存储库中复制所有东西时,它似乎忽略了vendor文件夹,并且我使用了govendor,所以我的所有依赖项都在其中。
如何解决这个依赖问题并将项目正确地构建为一个.deb包?作为参考,我得到的错误是:
src/github.com/project/project/project.go:15:2: cannot find package "google.golang.org/grpc/grpclog" in any of: /usr/lib/go-1.7/src/google.golang.org/grpc/grpclog (from $GOROOT) /tmp/project/obj-x86_64-linux-gnu/src/google.golang.org/grpc/grpclog (from $GOPATH)
发布于 2017-03-29 22:29:43
问题是dh-make-golang中存在一个关于导入供应商依赖项的错误。今天刚修好。
发布于 2017-03-29 06:41:51
看看goxc -它可以帮你做到这一点!
只需向目录根目录添加一个.goxc.json,如下所示
{
"AppName": "my_app",
"ArtifactsDest": "downloads",
"Tasks": [
"interpolate-source"
"deb",
],
"BuildConstraints": "linux,amd64 windows,amd64 darwin,amd64 linux,arm",
"ResourcesInclude": "INSTALL*,README*,LICENSE*,config/*,static/*,templates/*",
"PackageVersion": "0.9.3",
"TaskSettings": {
"deb": {
"metadata": {
"description": "my app",
"maintainer": "me",
"maintainer-email": "me@example.com"
},
"metadata-deb": {
"Homepage": "https://example.com"
},
"other-mapped-files": {
"/": "debian/",
"/usr/share/something/static": "static/",
"/usr/share/something/templates": "templates/"
}
}
},
"ConfigVersion": "0.9"
}然后运行goxc,它将为您完成所有的工作。
https://stackoverflow.com/questions/43084647
复制相似问题