protoc 命令来自于 https://github.com/google/protobuf,可以产生序列化和反序列化的代码,无go相关代码。
protoc-gen-go插件则来自于https://github.com/golang/protobuf/protoc-gen-go, 可以产生go相关代码, 除上述序列化和反序列化代码之外, 还增加了一些通信公共库。
编译方法分别为:
protoc --go_out=./go1/ ./proto/my.proto
protoc --go_out=plugins=grpc:./go2/ ./proto/my.proto
而grpc又来源于https://github.com/grpc/grpc-go, protoc和protoc-gen-go这两个工具都不在其中,所以玩grpc的时候,少不了protoc和protoc-gen-go.
我玩的时候,把protoc和protoc-gen-go二进制文件放在/usr/locla/bin中,一切OK.