使用CGO开发结构链代码

时间:2019-02-14 01:53:57

标签: docker go hyperledger-fabric cgo hyperledger-chaincode

我正在使用cgo来开发面料的链码      ./my_cc ├── vendor │ └── somecgopkg │ ├── build │ │ ├── interface.o │ │ ├── test │ │ └── test.o │ ├── lib │ │ └── libxxx.so │ ├── mypkg.go │ ├── mypkg_test.go │ └── src │ ├── mycfile.cpp │ └── mycfile.hpp ├── my_cc.go └── my_cc_test.go

mypkg.go

```
package somecgopkg

/*
#cgo CFLAGS: -I./src
#cgo LDFLAGS: -L./lib -lxxx
#include "mycfile.hpp"
#include <stdlib.h>
*/
import "C"

func SomeFunc() {
   ...
}
...
```

然后,我成功安装了此链码。但是当我尝试实例化此链码时,似乎有问题

```
Error: Error endorsing chaincode: rpc error: code = Unknown desc = Error starting container: Failed to generate platform-specific docker build: Error returned from build: 2 "# github.com/hyperledger/fabric/examples/chaincode/go/my_cc/vendor/somecgopkg
chaincode/input/src/github.com/hyperledger/fabric/examples/chaincode/go/my_cc/vendor/somecgopkg/mypkg.go:6:25: fatal error: mycfile.hpp: No such file or directory
```

首先,我要解释一下,对我的somecgopkg进行本地测试,一切都可以在cgo上正常工作,所以我想知道我是否可以在结构链代码中使用cgo,如果可以的话,我的问题出在哪里?码?谢谢您的关注

0 个答案:

没有答案