win10|win10下golang使用protobuf

1.安装protobuf库文件
go get github.com/golang/protobuf/proto(待验证)
2.安装protobuf的编译器protoc
url: https://github.com/protocolbuffers/protobuf/releases

下载 protoc-3.6.1-win32.zip
win10|win10下golang使用protobuf
文章图片

将protoc 文件放置到go程序的bin目录
win10|win10下golang使用protobuf
文章图片


3.protobuf的编译器的包选择
【win10|win10下golang使用protobuf】3.1goprotobufgo官方出品
//go
go get github.com/golang/protobuf/protoc-gen-go
3.2gogoprotobuf完全兼容google protobuf,它生成的代码质量和编解码性能均比goprotobuf高一些
//gogo
go get github.com/gogo/protobuf/protoc-gen-gogo
3.3 protoc-gen-gofast:生成的文件更复杂,性能也更高(快5-7倍)
go get github.com/gogo/protobuf/protoc-gen-gofast
//安装gogoprotobuf库文件
go get github.com/gogo/protobuf/proto
go get github.com/gogo/protobuf/gogoproto //这个不装也没关系
4.生成编译文件
//go
protoc --go_out=. *.proto
//gogo
protoc --gogo_out=. *.proto
//gofast
protoc --gofast_out=. *.proto
win10|win10下golang使用protobuf
文章图片

win10|win10下golang使用protobuf
文章图片


安装命令不同
go get -u code.google.com/p/goprotobuf/{proto,protoc-gen-go}

windows环境下:
1.首先,必须先的有go,默认安装在了C:\Go
2.然后下载protoc,https://code.google.com/p/protobuf/downloads/list,下一个二进制文件即可,为了方便,可以直接放到C:\GO\bin里面
3.配置GOPATH,这个就是你go工程的地方,应该早配置好了,比如D:\project\xxx
4.cmd里运行go get -u code.google.com/p/goprotobuf/{proto,protoc-gen-go},貌似win下面比较坑,会报错,所以可以分开输入go get -u code.google.com/p/goprotobuf/proto和go get -u code.google.com/p/goprotobuf/protoc-gen-go
5.把GOPATH目录下的bin的protoc-gen-go.exe拷到C:\GO\bin里面
6.然后就可以运行protoc了,命令是protoc --go_out=. *.proto
linux环境下:
1.和win一样,只是默认路径为/usr/local/go
2.下载https://protobuf.googlecode.com/files/protobuf-2.5.0.tar.bz2,直接解压,./configure,make,make install
3.和win一样,配置GOPATH,可以直接在~/.bashrc里改
4.直接运行go get -u code.google.com/p/goprotobuf/{proto,protoc-gen-go}
5.和win类似
6.和win一样

参考文献:
https://www.jianshu.com/p/bd26be0109be
https://studygolang.com/articles/1579

    推荐阅读