go - 从 github 导入使用本机 C 代码的 go 包
问题描述
我正在编写一些需要从另一个 GitHub 存储库访问 Cobra CLI 对象的代码:
package main
import (
"github.com/spf13/cobra/doc"
"github.com/sylabs/singularity/cmd/singularity/cli"
"log"
)
func main() {
err := doc.GenReSTTree(cli.SingularityCmd, "./")
if err != nil {
log.Fatal(err)
}
}
我也有以下版本约束:
[[constraint]]
name = "github.com/sylabs/singularity"
version = "3.0.3"
现在,当我go install
出现错误时:
# github.com/TMiguelT/singularity-userdocs/vendor/github.com/sylabs/singularity/internal/pkg/runtime/engines/config/starter
vendor/github.com/sylabs/singularity/internal/pkg/runtime/engines/config/starter/starter.go:10:10: fatal error: starter.h: No such file or directory
#include "starter.h"
^~~~~~~~~~~
compilation terminated.
因此,当我尝试构建代码时,它会尝试编译奇异模块并失败,因为它找不到一些 C 代码。此头文件位于我正在导入的存储库中:https ://github.com/sylabs/singularity/blob/v3.0.3/cmd/starter/c/starter.h
我怎样才能go install
意识到这一点,以确保我的项目能够编译?
解决方案
推荐阅读
- c# - 额外随机 JSON 解析
- java - 如何将 ACLMessage 从运行在 windows 上的 JADE 平台发送到运行在 Raspberry pi (Raspbian) 上的另一个 JADE 平台?
- version - 获取 libgsl.so.19 以运行程序;有 gsl-2.5 但有 libgsl.so.23
- java - 将自定义排序算法添加到 TableColumn
- shell - cd:shell 脚本中的错误替换
- java - 通过将彼此相邻的 **only** 重复元素分组来将列表拆分为子列表
- javascript - 如何使用 Javascript 访问这些淘汰赛伪变量?
- java - SonarLint 针对 java:S1206 问题发出警报,但实现了 hashCode 和 equals
- hive - Hive 支持 avrologicalType(s)
- docker - 将大文件从 Jenkins 上传到 Nexus 工件存储库时出现“读取超时”错误