为了账号安全,请及时绑定邮箱和手机立即绑定

Go build shared-c 不输出头文件

Go build shared-c 不输出头文件

Go
Cats萌萌 2021-12-07 14:58:20
我正在尝试在 GoLang 中测试构建一个共享的 C 库,并且输出没有创建头文件 (.h)测试去:package mainimport "C"import "fmt"func ExportedFun(s string) {    fmt.Printf("C gave us %s string", s)}func main() {}我运行的命令是:go build -buildmode=c-shared -o test.so test.go我得到了.so文件,但没有头文件。有什么我想念的吗?
查看完整描述

1 回答

?
跃然一笑

TA贡献1826条经验 获得超6个赞

从go 命令文档:


唯一可调用的符号是那些使用 cgo //export 注释导出的函数。


通过 cgo 导出函数的语法可以在cgo 文档中找到


可以通过以下方式导出 Go 函数以供 C 代码使用:


//export MyFunction

func MyFunction(arg1, arg2 int, arg3 string) int64 {...}


//export MyFunction2

func MyFunction2(arg1, arg2 int, arg3 string) (int64, *C.char) {...}

将您的函数标记为导出将生成标题。


查看完整回答
反对 回复 2021-12-07
  • 1 回答
  • 0 关注
  • 244 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信