go - 无法编译包含子模块的 Golang 项目
问题描述
我有一个带有一个 git 子模块的 Golang 项目,如下所示:
项目
- 去.mod
- main.go
- 配置文件
- go-blockchain/ (git 子模块)
- 去.mod
- 加密/
- encode.go(里面有 cgo 代码)
- 加密货币.go
- main.go
当我go build
在顶层运行时,我收到如下错误:
# github.com/blockchain/go-blockchain/crypto
/Users/niceguy/.go/pkg/mod/github.com/blockchain/go-blockchain@v0.0.0-20200320145517-cea8009ba7ee/crypto/encode.go:86:2:无法确定 C.crypto_encode_pair 的名称类型
/Users/niceguy/.go/pkg/mod/github.com/blockchain/go-blockchain@v0.0.0-20200320145517-cea8009ba7ee/crypto/encode.go:80:2:无法确定 C.crypto_encode_from_seed 的名称类型
/Users/niceguy/.go/pkg/mod/github.com/blockchain/go-blockchain@v0.0.0-20200320145517-cea8009ba7ee/crypto/encode.go:115:9:无法确定 C.crypto_encode_proof_to_hash 的名称类型
问题似乎是我更喜欢缓存而不是 CGO 库,这些库是在 go-blockchain 文件夹中构建并存回的。
建议?
解决方案
推荐阅读
- c# - 使用 itext7 .NET 为标记 (FreeText) PDF 设置图层
- go - 为什么播种和生成随机数会阻止 bufio 扫描仪在 Go 中读取文件中的行?
- swiftui - NSDataDetector 是否使用来自 URLSession 的数据
- c# - 如何将价值从 android-project 发送到 share-project?
- php - 使用 ESP32 将数据输入 php 表单
- regression - 10 个国家产出的回归表
- python - 代码不提供输出并继续运行
- jenkins - 如何从 Groovy Jenkins 发出并行发布请求并收集结果?
- python - 在 python 中使用 websocket api 调用时出现错误“timeStamp not ISO format”
- php - 从 Laravel 7 返回 500 到 Google Cloud Task 而不使用 abort()