原文:http://tianyalong.icu/content.html?id=18
Protocol buffer 安装
1.下载安装包
https://github.com/protocolbuffers/protobuf/releases
我下载的是protobuf-all-3.19.3.tar.gz
2.解压
tar -zxvf protobuf-all-3.19.3.tar.gz
3.进入到解压文件下
cd ./protobuf-3.19.3
4.生成配置文件
./autogen.sh
5.配置环境
./configure
6.编译源码
make
7.安装
sudo make install
8.刷新动态库
sudo ldconfig
protoc --version
查看是否安装成功,如果安装不成功将上述操作重试一遍
go语言插件安装
go get github.com/golang/protobuf/protoc-gen-go
在前面解压的文件中可能存在
生成go代码
protoc --go_out=. hello.proto
使用gRPC插件生成代码protoc --go_out=plugins=grpc:. hello.proto
可能会报如下错误
$ protoc --go_out=./ hello.proto
protoc-gen-go: unable to determine Go import path for "hello.proto"
Please specify either:
• a "go_package" option in the .proto source file, or
• a "M" argument on the command line.
See https://developers.google.com/protocol-buffers/docs/reference/go-generated#package for more information.
--go_out: protoc-gen-go: Plugin failed with status code 1.
解决办法
在声明后紧跟如下语句
option go_package="./;hello";
syntax = "proto3";
option go_package="./;hello";
package tyl.blog.hello;
message String {
string value = 1;
}