简体   繁体   中英

go tool: no such tool "compile"

I recently started trying go to program some web based applications. At first, everything went fine, until I wanted to cross compile a binary for a different platform. I'm running MacOS and I wanted to compile a binary for linux, so I changed GOOS to linux and GOARCH to amd64 . Since then, I always get the error message

go tool: no such tool "compile"

I'm using GoClipse, but running the compile manually by

go install hello.go

I get the same error. When changing back to compiling for darwin architecture, I get the same error now, so basically I'm totally unable to compile any code written in Go at the moment.

I installed it via the binary packages provided by google. In the end I actually got it back to work by just reinstalling it. Sometimes I'm just blind to the easy solution.

After that, I succeeded in cross compiling for linux machine after compiling the necessary cross-compilers by running env GOOS=linux GOARCH=arm GOROOT_BOOTSTRAP=/usr/local/go ./make.bash --no-clean from the Go sources directory.

Thanks for all you efforts, sorry to have kept you busy on such a simple matter.

如果你安装Go 1.5,你可能可以逃脱,但是如果你使用依赖于cgo任何东西,你将不得不安装一个交叉编译器链接器或在虚拟机上安装Linux以便能够交叉编译Linux 。

In my case is due to the fact that GOPATH and GOROOT are not set correctly, maybe you can check go env . Here is a discussion may be useful.

You have the wrong x64 or x386 package installed most likely. I had 32 installed running 64 bit. Reinstall fixed. Good luck.

The way I figured-out what file is read and caused Go to look for the compile binary in the wrong place can be solved using: $ strace go tool -n compile 2>&1 |grep openat

openat(AT_FDCWD, "/home/nwaizer/.config/go/env", O_RDONLY|O_CLOEXEC) = 3

In that file, the IDE Goland, add a path to some project, causing the havoc.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM