本文通过收集整理一些博客,亲测出一种有效的最新版本protoc库的安装方式:
版本:Ubuntu20.04
(!!!注意,按此方法重装后,因为版本是github上的新版本,所以与Ubuntu中默认的安装位置和链接库位置会不一样,导致出现链接库与源码不兼容的问题,很麻烦,如果是用这个库跑多传感器融合代码的同学,还是推荐使用Ubuntu自带的安装方式,再更新即可,只安装该库的同学可放心食用!!!)
以下是原文:
我直接通过源码和注释的方式告诉你们流程(2024/2/20亲测有效!):
sudo apt-get remove libprotobuf-dev #卸载旧版本的protobuf
which protoc #查看自己的库安装的路径
rm /usr/local/bin/protoc #根据你的路径,来卸载旧版本protobuf安装的库
卸完了旧版本之后,先安装一下所需要的依赖(由于我装过很多,所以我都列出来):
sudo apt-get install autoconf automake libtool curl make g++ unzip
然后就可以参照官网流程来:(官网这个的版本应该够新)
sudo apt-get install g++ git bazel #检查是否安装了所需依赖
#以下三行从官网获取protobuf包
git clone https://github.com/protocolbuffers/protobuf.git
cd protobuf
git submodule update --init --recursive
注意,此时我们已经下载好了这个包,需要进行编译,考虑到大部分人都是cmak,所以我们不使用官网的bazel办法,使用Cmake编译protobuf:
cmake . -DCMAKE_CXX_STANDARD=14
cmake --build .
别问,copy就完了,(没完,接下来还有):
sudo make install #安装库
sudo ldconfig #copy is good
protoc --version #如果你按上面走下来了,可以查看版本了
至此就安装完成了,注意,我应该是最新的Ubuntu20.04+protobuf27.0-dev新版本安装的博客,以前的那些博客不建议作为参考,我把最近的相关博客以及官网上的办法都总结到一块,试验了一下得出了这篇博客中的办法,注意,不是唯一的办法,但是亲测有效,有问题随时联系我,欢迎大家交流学习!
参考博客:https://blog.csdn.net/jax_fanyang/article/details/135937002?spm=1001.2014.3001.5502
https://blog.csdn.net/wzw1609119742/article/details/119712422
https://blog.csdn.net/shanlijia/article/details/113519789