golang 编译器错误:无法加载包:包 main:/home/ubuntu/workspace/Go 中没有可构建的 Go 源文件



我正在尝试编译GO程序。该代码是一个小的X11窗口管理器,在此处找到。(代码是98行,在此处发布太长)

这是我在x86-64上运行的命令:

GOOS=linux GOARCH=386 go build littlewm.go

此命令在同一目录中的其他文件上正常工作。但是,当我尝试编译这个问题时,我会收到以下错误:

can't load package: package main: no buildable Go source files in /home/ubuntu/workspace/Go

这不涉及gopath变量,因为我在同一目录中成功编译了其他程序。我怀疑它涉及代码本身或我缺乏的某种选择。因此,这实际上并不是现有问题的重复,并且可能是独一无二的,因为我没有从其他类似问题中得到答案。任何帮助都将受到极大的赞赏。

谢谢!

我在尝试构建自己的GO程序时遇到了类似的问题。我刚刚将GCO添加到了库中的一些本机C代码中。它为我为本机平台(我正在编码的机器编码)构建,但是当我尝试针对另一个平台时(使用GOOSGOARCH,就像您这样做一样)。

将CGO_ENABLED设置为1(如David评论中所述)为我解决了问题:

CGO_ENABLED=1 GOOS=linux GOARCH=386 go build littlewm.go

我正在使用MakeFile使用多个规则为多个平台构建,因此对我来说,我将

export CGO_ENABLED = 1

在我的makefile顶部附近,因此我不需要为每个平台指定它。

最新更新