1. 是什么?
Google Protocol Buffer(简称 Protobuf)是一种轻便高效的结构化数据存储格式,平台无关、语言无关、可扩展,可用于通讯协议和数据存储等领域。
2. 为什么要用?
- 平台无关,语言无关,可扩展;
- 提供了友好的动态库,使用简单;
- 解析速度快,比对应的XML快约20-100倍;
- 序列化数据非常简洁、紧凑,与XML相比,其序列化之后的数据量约为1/3到1/10。
3. 怎么安装?
源码下载地址: https://github.com/google/protobuf
安装依赖的库: autoconf automake libtool curl make g++ unzip
安装:
1 $ ./autogen.sh 2 $ ./configure 3 $ make 4 $ make check 5 $ sudo make install
开始解决
本教程适用于折腾半天还不管事,无奈之举。以及不能卸载(与别人共用服务器)
中心思想,找到系统认准的protoc,用你想要的版本替换他。
你需要
1.你需要的protobuf版本
2.该版本被你安装在哪
3.你系统认准的protobuf版本在哪
4.告诉你的系统,去哪里找lib
1安装你需要的protobuf
这个没什么好说的,不过提醒你最好用prefix装在你指定的目录,.configure --help看看怎么用prefix
./configure --prefix=/root/LT
2.找到你刚安装的protobuf
进入他的lib文件夹:
比如我就不同寻常的装到了LT文件夹里:不走寻常路,记住这个protoc。
3.找到你系统认定的protoc在哪
终端输入:
你也可以用命令行,找到这个protoc,给他改个名字,比如protoc_origin,然后把你想要的版本粘贴过来.这时候再输入
protoc --version
4.在/etc/ld.so.conf.d文件夹里面创建libprotobuf.conf
我在LT这么一个奇葩文件夹里面安装的,前面已经说过,所以我的lib也在这。所以我要在里面输入/root/LT/lib