新版本
google protobuf-3.6.1是現在最新版本,添加了新的特性,看說明
下載地址 https://github.com/protocolbuffers/protobuf/releases
我下載的是protobuf-all-3.6.1.tar.gz 包
新版本不需要執行autogen.sh腳本,直接./configure就行
tar zvxf protobuf-all-3.6.1.tar.gz cd protobuf-3.6.1 ./configure –prefix=/usr/local/ sudo make #要編譯很久 sudo make check sudo make install
protoc –version #查看版本
舊版本
簡介
最近學習go語言,需要安裝protobuf,但是網上的教程很多都不太適用於centos7 的系統。現在總結下protobuf在centos7下的安裝教程。
protobuf是Google開發出來的一個語言無關、平台無關的數據序列化工具,在rpc或tcp通信等很多場景都可以使用。通俗來講,如果客戶端和服務端使用的是不同的語言,那么在服務端定義一個數據結構,通過protobuf轉化為字節流,再傳送到客戶端解碼,就可以得到對應的數據結構。這就是protobuf神奇的地方。並且,它的通信效率極高,“一條消息數據,用protobuf序列化后的大小是json的10分之一,xml格式的20分之一,是二進制序列化的10分之一”。
安裝
編譯安裝protobuf的編譯器protoc
wget https://github.com/google/protobuf/releases/download/v3.6.1/protobuf-all-3.6.1.tar.gz tar zxvf protobuf-all-3.6.1.tar.gz ./autogen.sh ./configure make make install
錯誤處理
1、./autogen.sh執行報錯./autogen.sh: line 38: autoreconf: command not found
安裝autoconf和automake yum -y install gcc automake autoconf libtool make 安裝g++: yum install gcc gcc-c++