我正在尝试编写一个go程序。代码是一个小的x11窗口管理器,找到了HERE.(代码是98行,这里发布的时间太长了)
这是我在x86-64 Ubuntu上运行的命令:
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
变量,因为我已经在同一目录中成功编译了其他程序。我怀疑它涉及代码本身或我缺乏的一些选项。因此,这并不是现有问题的重复,并且很可能是独一无二的,因为我没有从其他类似问题得到我想要的答案。非常感谢任何帮助。
谢谢!
答案 0 :(得分:1)
在尝试构建自己的go程序时遇到了类似的问题。
我刚刚添加了GCO以与库中的某些本机C代码接口。
它是为我的本机平台(我在其上编码的机器)而构建的,但是当我尝试定位另一个平台(在执行操作时使用GOOS
和GOARCH
时)却不是。
将CGO_ENABLED设置为1(如大卫的评论中所述)为我解决了这个问题:
CGO_ENABLED=1 GOOS=linux GOARCH=386 go build littlewm.go
我当时正在使用makefile使用多个规则为多个平台构建,所以对我来说,
export CGO_ENABLED = 1
在我的makefile的顶部附近,因此我不需要为每个平台指定它。