我有一个使用利布维特 v7.4.0的项目。
go.mod:
github.com/libvirt/libvirt-go v7.4.0+incompatible // indirect它在mac和linux上都进行编译,但是在带有GOOS=Linux标志的macos上交叉编译失败了。
$ env GOOS=linux go build -o myapp .
# gitlab.mycompany.io/mycompany-platform/myapp/command/agent
command/agent/libvirt_listener.go:11:26: undefined: libvirt.DomainEventType
command/agent/libvirt_listener.go:23:14: undefined: libvirt.Connect
command/agent/libvirt_listener.go:100:9: undefined: libvirt.EventRegisterDefaultImpl
command/agent/libvirt_listener.go:105:15: undefined: libvirt.NewConnect
command/agent/libvirt_listener.go:115:4: undefined: libvirt.EventRunDefaultImpl
command/agent/libvirt_listener.go:121:22: undefined: libvirt.Connect
command/agent/libvirt_listener.go:121:42: undefined: libvirt.Domain
command/agent/libvirt_listener.go:121:65: undefined: libvirt.DomainEventLifecycle
command/agent/libvirt_listener.go:149:63: undefined: libvirt.DomainState
command/agent/libvirt_listener.go:121:22: too many errors发布于 2021-08-31 08:59:45
THe libvirt包是一个CGo绑定到本机libvirt平台库。因此,在构建CGO时不可能禁用CGO,反过来也不可能交叉编译,因为这隐式禁用CGO。
https://stackoverflow.com/questions/68957556
复制相似问题