1、下载git、golang
sudo apt-get install git
sudo apt-get install golang
2、下载go语言的protobuf
获取 goprotobuf 提供的 Protobuf 编译器插件 protoc-gen-go
cd ~/go/src/
go get github.com/golang/protobuf/protoc-gen-go
cd github.com/golang/protobuf/protoc-gen-go
go build
将bin/protoc-gen-go加入环境变量
export GOPATH=/home/zhaojunyan/go
export PATH=/usr/local/go/bin:$GOPATH/bin
vim ~/.profile
source ~/.profile
获取 goprotobuf 提供的支持库,包含诸如编码(marshaling)、解码(unmarshaling)等功能
go get github.com/golang/protobuf/proto
cd ~/go/src/github.com/golang/protobuf/proto
go build
go install
去https://github.com/google/protobuf/releases下载对应的protoc二进制执行文件,如protoc-3.5.1-linux-x86_64.zip,解压将bin下protoc放到go/bin下即可
3、配置GOPATH(bashrc或者profile)
vim ~/.bashrc
source ~/.bashrc
4、安装protobuf编译器
进入下载的protobuf/protoc-gen-go目录
go build
go install
进入下载的protobuf/protoc目录
go build
go install
GOPATH路径下的bin目录会生成一个执行文件protoc-gen-go
5、编写proto文件
6、编译proto文件生成go文件
protoc –go_out=. *.proto
这里我们发现仅能解析proto2文件,查询protoc版本发现也是proto版本
7、加proto3执行文件
下载protoc,地址https://github.com/google/protobuf/releases,里面可以找到win/linux/mac的二进制文件,
我们需要protoc-3.5.1-linux-x86_64.zip,把bin目录里面的protoc(其它文件不需要)拷贝到PATH下面即可。
protoc –version查询版本发现是libprotoc 3.5.1版本
重新生成proto文件的go代码(一定腰带grpc,否则生成没有rpc部分代码)
protoc –go_out=plugins=grpc:. helloworld.proto