博客 / 詳情

返回

go精通protobuf連載一:安裝protobuf與protoc-gen-go

一、介紹

protobuf是一種與語言無關、與平台無關的可擴展的插件,用於序列化結構化數據。
只需要定義一下protobuf結構的文件 .proto 然後就可以使用protoc 命令生成對應的編程語言的結構的文件。

protoc在設計上把protobuf和不同的語言解耦了,底層用c++來實現protobuf結構的存儲,然後通過插件的形式來生成不同語言的源碼。

可以把protoc的編譯過程分成簡單的兩個步驟

  1. 解析.proto文件,轉譯成protobuf的原生數據結構在內存中保存
  2. 把protobuf相關的數據結構傳遞給相應語言的編譯插件,由插件負責根據接收到的protobuf原生結構渲染輸出特定語言的模板。

通過這種機制,protobuf支持了絕大多數主流語言。如Java、Python、Objective-C 和 C++ Kotlin、Dart、Go、Ruby和C#等,生成的代碼。

二、操作系統安裝 protobuf

2.1 安裝 protobuf

我們這裏使用brew安裝,只要輸入下面的命令就可以了

brew install protobuf

安裝完成後,輸入 protoc --version 查看是否生效

➜ protoc --version
libprotoc 3.21.7

安裝成功。

三、安裝protobuf對應的go語言工具protoc-gen-go

3.1 使用go install 安裝 protoc-gen-go最新版本

go install github.com/golang/protobuf/protoc-gen-go@latest

使用go install 會安裝在 $GOPATH下的bin目錄
我們看一下$GOPATH

➜ echo $GOPATH
/Users/hisheng/go/go@1.18

然後我們進入到這個bin目錄

➜ cd /Users/staff/go/go@1.18/bin

會看到剛安裝的 protoc-gen-go

user avatar
0 位用戶收藏了這個故事!

發佈 評論

Some HTML is okay.