你正在使用哪个版本的Go( go version
)?
$ go version
go version go1.16.1 darwin/amd64
这个问题在最新版本中是否重现?
是的
你正在使用什么操作系统和处理器架构( go env
)?
go env
输出
$ go env
GO111MODULE=""
GOARCH="amd64"
GOBIN="/Users/jeff/go/bin"
GOCACHE="/Users/jeff/Library/Caches/go-build"
GOENV="/Users/jeff/Library/Application Support/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOINSECURE=""
GOMODCACHE="/Users/jeff/go/pkg/mod"
GONOPROXY=""
GONOSUMDB=""
GOOS="darwin"
GOPATH="/Users/jeff/go"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/usr/local/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd64"
GOVCS=""
GOVERSION="go1.16.1"
GCCGO="gccgo"
AR="ar"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
GOMOD="/Users/jeff/Work/gRPC/gnostic/go.mod"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -arch x86_64 -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/_p/4kmts9xd24zgd44d5rvthtt80000gn/T/go-build1011815535=/tmp/go-build -gno-record-gcc-switches -fno-common"
你做了什么?
手动安装protoc,按照指示进行操作
从.pkg文件中安装go,按照https://golang.org/doc/install上的指示进行操作
cd ~/Work/gRPC
git clone https://github.com/google/gnostic.git
cd gnostic
make
你期望看到什么?
我期望成功构建gnostic
你看到了什么?
出现了以下几行示例
go generate ./...
protoc-gen-go: program not found or is not executable
Please specify a program using absolute path or make sure the program is available in your PATH system variable
--go_out: protoc-gen-go: Plugin failed with status code 1.
这是因为只将/usr/local/go/bin添加到了paths.d中,而$HOME/go/bin没有被添加到任何地方,而且你的网站安装说明中也没有提到检查后者。
3条答案
按热度按时间gc0ot86w1#
将以下文本内容标记为文档,因为这些信息可能更容易被发现。但是,https://golang.org/doc/code有一个关于已安装二进制文件位置的部分。此外,官方的Go protobuf documentation提到了
protoc-gen-go
的默认安装路径。xfb7svmp2#
ddarikpa3#
由于#66043被关闭为重复问题,我想将此问题提升。
自此问题创建以来已经过去了近2.5年——是否有可能在安装文档中或在
go help install
的输出中添加关于包含$GOBIN的说明?