突然转到工具:没有这样的工具"编译"

Kar*_*lom 5 go

我已经安装了我的Ubuntu桌面,它在我关闭计算机之前工作正常.

现在,当我启动我的机器并重新开始我的项目工作时,我得到了这个

$ go build
go tool: no such tool "compile"
go tool: no such tool "compile"
go tool: no such tool "compile"
go tool: no such tool "compile"
go tool: no such tool "compile"
Run Code Online (Sandbox Code Playgroud)

当我尝试建立一个项目时.

我在断电之前做的唯一可能有一些影响的事情是安装godoc使用

sudo apt-get install golang-doc
Run Code Online (Sandbox Code Playgroud)

我已经通过下载go1.10.1.linux-amd64.tar.gz文件直接安装,而不是使用apt-get

去环境

GOARCH="amd64"
GOBIN=""
GOCACHE="/home/me/.cache/go-build"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/home/me/go"
GORACE=""
GOROOT="/usr/local/go"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build255010769=/tmp/go-build -gno-record-gcc-switches"
Run Code Online (Sandbox Code Playgroud)

$ go版本

go version go1.10.1 linux/amd64
Run Code Online (Sandbox Code Playgroud)

我仍然可以运行comiled go代码.

这里可能出了什么问题?我该如何解决?

小智 27

这可能看起来很奇怪,但跑步export GOROOT=为我解决了这个问题。

  • 不知怎的,这对我有用。之前是 `GOROOT="/usr/local/opt/go/libexec"` ,现在是 `GOROOT="/opt/homebrew/Cellar/go/1.17.1/libexec"` (我在运行 Darwin Arm64 - M1 芯片的 Mac) (4认同)

pet*_*rSO 6

compile程序应该在您的go env GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"目录中.如果没有,请下载Go,delete /usr/local/go并重新安装Go.