我有这个文件夹结构fib
包裹:
$ tree
.
└── src
└── fib
├── fib
│ └── main.go
├── fib.go
└── fib_test.go
(main.go
在包装中main
, fib(_test).go
在包装中fib
)
GOPATH 设置为$PWD/src
,GOBIN 设置为$PWD/bin
。当我跑步时go install fib/fib
,我得到一个名为fib
在目录中bin
(这是我所期望的):
$ tree bin/
bin/
└── fib
但是当我设置GOOS
or GOARCH
,表格中的目录GOOS_GOARCH
被建造:
$ GOARCH=386 GOOS=windows go install fib/fib
$ tree bin/
bin/
└── windows_386
└── fib.exe
这不是我想要的。我想要该文件fib.exe
in the bin
目录,不在子目录中bin/windows_386
.
(这怎么可能?
这似乎不可能,如图所示问题 6201 https://code.google.com/p/go/issues/detail?id=6201.
GOARCH
设置要构建的二进制文件的类型。
您可能正在交叉编译:GOARCH
可能是手臂。
你绝对不想运行arm
工具上的x86
system.
主机系统类型是GOHOSTARCH
.
要安装您需要使用的 api 工具(或任何工具)
GOARCH=$(go env GOHOSTARCH) go install .../api
然后简单地'go tool
'会找到他们。
任何状况之下 (GOARCH
or GOHOSTARCH
), the go
命令将安装在您无法更改的固定位置。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)