hash protoc 2>/dev/null ||{echo >&2 -e 'error: protoc binary not found\nDownload it from https://github.com/google/protobuf/releases and put it in your path.\nMake sure you get the one starting with `protoc`, not `protobuf`.';exit 1;}
PROTOC="$(which protoc)"
VERSION="$($PROTOC --version | cut -d' ' -f2)"
MIN_VERSION="3.0"
version_gte "$VERSION""$MIN_VERSION"||{echo >&2"error: protoc version must be >= $MIN_VERSION (your $PROTOC is $VERSION)";exit 1;}
hash protoc-gen-go-grpc 2>/dev/null || go get github.com/golang/protobuf/protoc-gen-go google.golang.org/grpc/cmd/protoc-gen-go-grpc
hash protoc-gen-go-grpc 2>/dev/null ||{echo >&2'error: Make sure $GOPATH/bin is in your $PATH';exit 1;}