无法从源代码安装Go-Ipfs

时间:2019-06-24 05:54:45

标签: go ipfs

我正在尝试在Windows 10上从源代码构建IPFS。

以前我是从源代码安装的。它工作正常。但是我需要最新的资料,所以我从头开始。因为我编辑了源代码中的某些部分。

我遵循了https://github.com/ipfs/go-ipfs/blob/master/docs/windows.md上的指示。

我在执行以下命令时收到以下错误。

代码

cd %GOPATH%\src\github.com\ipfs\go-ipfs
make install

错误

go version go1.12.6 windows/amd64
bin/check_go_version 1.12
go install  -asmflags=all=-trimpath="D:\GO_WORKSPACE" -gcflags=all=-trimpath="D:\GO_WORKSPACE" -ldflags="-X "github.com/ipfs/go-ipfs".CurrentCommit=810cb607e-dirty" ./cmd/ipfs
# github.com/ipfs/go-ipfs/plugin/loader
plugin\loader\preload.go:11:2: undefined: pluginipldgit
plugin\loader\preload.go:12:2: undefined: pluginbadgerds
plugin\loader\preload.go:13:2: undefined: pluginflatfs
plugin\loader\preload.go:14:2: undefined: pluginlevelds
make: *** [cmd/ipfs/Rules.mk:37: cmd/ipfs-install] Error 2

我尝试将这些插件添加到src \ github.com \ ipfs \ go-ipfs \ plugin \ loader目录下的preload.go文件中。

在preload.go上存在代码。

import (
    "github.com/ipfs/go-ipfs/plugin"
)

我在问题之后添加了

import (
    "github.com/ipfs/go-ipfs/plugin"
    pluginipldgit "github.com/ipfs/go-ipfs/plugin/plugins/git"
    pluginbadgerds "github.com/ipfs/go-ipfs/plugin/plugins/git"
    pluginflatfs "github.com/ipfs/go-ipfs/plugin/plugins/git"
    pluginlevelds "github.com/ipfs/go-ipfs/plugin/plugins/git"
)

所以我添加此行之后结果就是成功。

执行的命令

make install

结果

go version go1.12.6 windows/amd64
bin/check_go_version 1.12
go install  -asmflags=all=-trimpath="D:\GO_WORKSPACE" -gcflags=all=-trimpath="D:\GO_WORKSPACE" -ldflags="-X "github.com/ipfs/go-ipfs".CurrentCommit=810cb607e-dirty" ./cmd/ipfs

然后我尝试使用以下命令启动ipfs

ipfs daemon

错误

Initializing daemon...
go-ipfs version: 0.4.22-dev-810cb607e-dirty
Repo version: 7
System version: amd64/windows
Golang version: go1.12.6

Error: unknown datastore type: flatfs

有人可以帮我从源头配置IPFS吗? 预先感谢。

1 个答案:

答案 0 :(得分:0)

我通过以下方法解决了这个问题。不确定这是否是一个好的解决方案。我可以解决这个问题的任何方式。

我将其发布为答案。因此对所有遇到相同问题的人都是有用的。

1)删除了“%GO_WORKSPACE%/ .... / ipfs”文件夹中的go-ipfs文件夹。

2)Git手动在同一位置克隆go ipfs存储库。

3)进入go-ipfs文件夹。

4)执行安装命令。

make install