protobuf安装与卸载

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

一、版本

1.1 protobuf 2.6.1

https://github.com/protocolbuffers/protobuf/releases/tag/v2.6.1
->libprotobuf.so.8

1.2 protobuf 3.17.3

下载地址:https://github.com/protocolbuffers/protobuf/releases/tag/v3.17.3
->libprotobuf.so.28

1.3 protobuf 3.19.1

下载地址:https://github.com/protocolbuffers/protobuf/releases/tag/v3.19.1
->libprotobuf.so.30

二、安装

tar -xvf protobuf protobuf-3.17.3.tar.gz
cd protobuf-3.17.3
./autogen.sh
./configure “CXXFLAGS=-std=c++11”
make
make check
sudo make install
sudo ldconfig

三、卸载

查看protobuf的版本:protoc --version
查找protobuf的位置:which protoc
删除可执行文件:sudo rm /usr/local/bin/protoc
删除头文件:sudo rm -rf /usr/local/include/google
删除库文件:sudo rm -rf /usr/local/lib/libproto*

四、运行example

官方手册链接,下方为C++用例
cd至protobuf安装目录下
cd example/
mkdir build
protoc -I=./ cpp_out=./build ./addressbook.proto
cd build/
cmake …
make
./add_person_cpp book_file_name即可运行样例

五、其他指令

查找libprotobuf.so:whereis libprotobuf.so

六、问题解决

6.1 libprotobuf.so.28:cannot open shared object file

查看ld.so.conf配置:sudo vi /etc/ld.so.conf,内容应该是 include /etc/ld.so.conf.d/*.conf,即包含ld.so.conf.d文件夹中的所有配置文件
查找libprotobuf.so.28位置:whereis libprotobuf.so.28
cd /etc/ld.so.conf.d
sudo touch proto.conf
sudo vi proto.conf
将libprotobuf.so.28的位置复制到proto.conf中
保存
更新动态链接库: /sbin/ldconfig -v

6.2 Could not find a package configuration file provided by “protobuf” with any of the following names: protobufConfig.cmake protobuf-config.cmake

进入protobuf安装目录/example
修改CMakeLists.txt
find_package(protobuf CONFIG REQUIRED) -> find_package(Protobuf REQUIRED)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值