google protobuf是一個靈活的、高效的用於序列化資料的協議。相比較XML和JSON格式,protobuf更小、更快、更便捷。google protobuf是跨語言的,並且自帶了一個編譯器(protoc),只需要用它進行編譯,可以編譯成Java、python、C++、C#、Go等程式碼,然後就可以直接使用,不需要再寫其他程式碼,自帶有解析的程式碼。更詳細的介紹見: Protocol Buffers
版本選擇
protobuf版本使用protobuf v21.12
因為在這之後的protobuf多了一些依賴導致安裝複雜度大幅增加
安裝
下載原始碼
# 下載
wget https://github.com/protocolbuffers/protobuf/releases/download/v21.12/protobuf-cpp-3.21.12.tar.gz
# 解壓
tar -xvf protobuf-cpp-3.21.12.tar.gz
安裝
mkdir build && cd build
../configure
make -j8
sudo make install
如果出現
kuraxii:third_party/ $ protoc
protoc: error while loading shared libraries: libprotobuf.so.32: cannot open shared object file: No such file or directory
執行
sudo ldconfig