构建超级账本结构时出错:goshim.tar.bz2 中的“bzip2 数据创建错误”
Posted
技术标签:
【中文标题】构建超级账本结构时出错:goshim.tar.bz2 中的“bzip2 数据创建错误”【英文标题】:Error building hyperledger fabric : “bzip2 data Creating Error” in goshim.tar.bz2 【发布时间】:2019-02-17 08:33:36 【问题描述】:前提条件
面料 1.4 我在 Raspbery Pi3+ 上安装了 openSUSE错误详情
我运行了以下命令。
# make docker
无法创建goshim.tar.bz2
发生错误,我无法创建command。
Removing intermediate container fb7423fe5cf7
---> 24c6fdada18f
Successfully built 24c6fdada18f
Successfully tagged hyperledger/fabric-orderer:latest
docker tag hyperledger/fabric-orderer hyperledger/fabric-orderer:arm64-1.4.1-snapshot-e91c57c5f
docker tag hyperledger/fabric-orderer hyperledger/fabric-orderer:arm64-latest
Creating .build/goshim.tar.bz2
make: execvp: /bin/sh: Argument list too long
make: *** [Makefile:315: .build/goshim.tar.bz2] Error 127
生成文件
$(BUILD_DIR)/goshim.tar.bz2: $(GOSHIM_DEPS)
@echo "Creating $@"
@tar -jhc -C $(GOPATH)/src $(patsubst $(GOPATH)/src/%,%,$(GOSHIM_DEPS)) > $@
有没有办法避免这种现象?
【问题讨论】:
【参考方案1】:make: execvp: /bin/sh: 参数列表太长
这可能是GOSHIM_DEPS
产生的源文件列表,参数太长导致sh
隐式执行。
试试这个:将 @tar
行替换为
@./scripts/goListFiles.sh $(PKGNAME)/core/chaincode/shim | sed “s!$(GOPATH)/src/!!g” |xargs tar -jhc -C $(GOPATH)/src > $@
我没有和你一样的环境,所以上面的代码可能有错误,但基本思想可以应用。
编辑:也就是说,错误仍然存在的可能性仍然存在。 GOSHIM_DEPS
本身是使用$()
语法定义的,并且在 sh 参数的长度上限之下。
【讨论】:
以上是关于构建超级账本结构时出错:goshim.tar.bz2 中的“bzip2 数据创建错误”的主要内容,如果未能解决你的问题,请参考以下文章
如何连接不同的计算机加入频道并在超级账本上实时查看调用内容(交易)?