准备工作
环境搭建
这里,我们需要一个 Go 的环境,所以关于 GOPATH / GOROOT 啥的,都要齐全了。
1 | go get github.com/golang/dep/cmd/dep |
源码准备
源码是在 Github 上的,国内访问比较慢,想克隆下来,搞不好就失败了。所以这里建议大家使用 Gitee 先把 Github 拉过来,再从 Gitee 上克隆。
1 | git clone git@gitee.com:ci123-prometheus/influxdb.git |
开始编译
编译前的说明:
因为目前 Github 上的 InfluxDB 已经是 2.0 版本了,对于这个版本的 编译, 我按照官方的说明 进行编译, 出现了许多的 依赖包的 问题 , 所以就编译失败了, 后来换成 1.8 的版本, 也是这样子。不得已,只好先用 1.7.8 的版本来进行 编译。
dep ensure 的时候,可能出现依赖包 无法下载的情况,这里,我们需要 进行代理的设置: Git设置代理 ,但是好像这样设置的也不行 。 可以开 全局代理 试试。笔者不是这么做的。
笔者在 阿里云 购买的 香港 的服务器,直接 dep ensure ,就搞定了。 随后把 src 里面的包 给 抠了 下来。 现在这里分享出来: . 里面的 InfluxDB 的 branch 是 1.7.8 。 1.8 版本 之后的 编译,我在研究研究。
dep ensure 之后, 我们 进入 influxdb 文件 目录 , 执行:
1 | go clean ./... |
在 香港 的 服务器上, 执行的 刚刚的 。 在 bin 的目录下 , 我们可以看到有一下的执行文件:
1 | -rwxr-xr-x 1 root root 13854153 Oct 22 13:43 dep* |
这就算编译好了。 关于 1.8 的编译 或者是 2.0 的编译,大家是怎么编译的,可以参考下嘛?