0

我正在尝试使用 build flag 构建一个 Go 包-buildmode=c-shared。我期望得到两个文件myfile.somyfile.h. 但是,我只得到.so文件。为什么会这样,我该如何解决?

我正在运行的完整命令是:

go build -o myfile.so -buildmode=c-shared myfile.go

当我计划从 Python调用时,我在这里找到了我的“说明” 。myfile

这是我的围棋代码:

package main


import (
    "C"
    "bytes"
    "log"
    "encoding/json"
    "net/http"
)



func call_request(arg1, arg2, arg3 string) {
// simple golang code to submit a http post request
    }

func main () {
}

这是我的代码的基本摘要,没有发布我的整个代码。但是,请注意运行上面链接中的示例会创建一个.so.h文件。

4

1 回答 1

0

正如@JimB 所说,问题是没有头文件:

更新代码:

package main


import (
    "C"
    "bytes"
    "log"
    "encoding/json"
    "net/http"
)


//export call_request
func call_request(arg1, arg2, arg3 string) {
// simple golang code to submit a http post request
    }

func main () {
}
于 2021-01-10T00:59:07.337 回答