赞
踩
有两种安装方式,一种是通过链接安装,另一种是下载源文件安装。
我们来介绍后一种——通过源文件安装。
注意了,版本一定要安装正确,**v20开头和v3不是一个版本**。
两者最大的区别在于,v3开头的版本有autogen.sh文件,而v20开头的版本没有autogen.sh文件,所以我推荐使用v3开头的版本,当然自己也可以选择更合适的版本。
在安装过程中记得使用sudo命令,赋予管理员权限。
tar zxvf protobuf-all-3.19.4.tar.gz //解压
cd protobuf-3.19.4/ //进入解压目录
//检查并安装以下环境,Ubuntu使用apt-get安装,centos7环境使用yum
sudo apt-get install autoconf
sudo apt-get install automake
sudo apt-get install libtool
//以上安装成功后执行下面
./autogen.sh
//生成编译配置文件成功,运行配置脚本
./configure
sudo make //要编译很久
sudo make check //测试
sudo make install //安装sudo ldconfig //更新一些动态链接库
protoc --vertion //在任何目录下输入这个命令,查看protoc版本,出现版本号即成功
期间遇到的问题:
1. 执行make check
有两种情况,一种是虚拟机,比如说vmware,那么只需要将虚拟内存从4G变成8G即可;第二种情况是服务器,比如说腾讯云服务器,那么只需要将swap分区设置为8G即可,命令如下:
# 1. 创建分区
sudo dd if=/dev/zero of=/swapfile bs=1M count=8192#挂载和开启swap
sudo mkswap /swapfile
sudo swapon /swapfile# free -m #可以查看内存使用
#2. 关闭分区,在protobuf编译结束之后,可以关掉和删除swapfile
sudo swapoff /swapfile
sudo rm /swapfile
执行创建分区命令的时候有可能会遇到这个问题:dd: failed to open '/swapfile': Text file busy
那么我们只需要关闭swap分区,再重新执行创建分区的命令即可。
sudo swapoff -a
2. protoc --version
protoc: error while loading shared libraries: libprotoc.so.15: cannot open shared object file: No such file or directory
只需要刷新动态链接库即可。
sudo ldconfig
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。