【ProtoBuf】2.环境配置

v2-51ee98b05ce2ada206b744b6ff86cbd1_r
————————————每一个不曾起舞的日子都是对生命的辜负。

PS: 安装中途出现很多error,可能是轻量级云服务器性能不够,此外还有中间的一些配置错误问题,最终采用了虚拟机,解决问题的方案在解决专栏中

一. 安装Protofbuf-Win

下载地址:Release Protocol Buffers v21.11 · protocolbuffers/protobuf (github.com)

image-20230520170513411

根据自己所需的版本安装即可,我使用的Win64,因此安装的是红框的版本。

二. 配置环境变量

  1. 下载完之后将压缩包解压在某一个位置,打开解压后的文件夹:

image-20230520170837110

  1. 进入bin目录,将其中的地址复制下来

image-20230520170922805

  1. 搜索:“编辑系统环境变量” 并进入

image-20230520171017675

点击:image-20230520171102815

接下来:image-20230520171201632

image-20230520171334285

三.验证是否添加成功

  1. 打开终端:快捷键(Win + R), 输入cmd进入终端:

image-20230520171448625

  1. 点击确定,进入终端后,输入:protoc --version

  2. 若出现下面结果,表示配置成功:

image-20230520171607866


四. Linux下Protobuf安装包的安装

1. 下载ProtoBuf

下载ProtoBuf前⼀定要安装依赖库:autoconf automake libtool curl make g++ unzip
如未安装,安装命令如下:

Ubuntu用户选择:

sudo apt-get install autoconf automake libtool curl make g++ unzip -y

Centos用户选择:

sudo yum install autoconf automake libtool curl make gcc_c++ unzip

上面的下载完之后,继续接下来的操作

ProtoBuf下载地址21.11路径:Release Protocol Buffers v21.11 · protocolbuffers/protobuf (github.com)

如果是C++版本,就下载下面的文件:image-20230520172749489

如果想在各种语言都能使用(如Java、C++、php等),就下载第二个文件:image-20230520172855274

为了更好的兼容,我们选择下载第二个文件,通过右键复制链接,在xshell中输入:wget,并将刚才的链接粘贴到xshell中:image-20230520173113338

实际上就是将压缩包以及里面的代码下载到Linux环境。(下载需要一些时间。)

image-20230520173658847

下载完成。

2. 解压压缩包

命令:unzip protobuf-all-21.11.zip

image-20230520173838115

解压后的这个目录中就是源码内容。

image-20230520173941510

通过里面的文件就可以将程序真正的安装了。

3. 安装ProtoBuf

# 第⼀步执⾏autogen.sh,但如果下载的是具体的某⼀⻔语⾔,不需要执⾏这⼀步。
./autogen.sh
# 第⼆步执⾏configure,有两种执⾏⽅式,任选其⼀即可,如下:
# 1、protobuf默认安装在 /usr/local ⽬录,lib、bin都是分散的
./configure
# 2、修改安装⽬录,统⼀安装在/usr/local/protobuf下
./configure --prefix=/usr/local/protobuf
  1. 输入./autogen.sh

image-20230520174227949

稍微等一等~

image-20230520174301153

完成。

  1. 输入:./configure --prefix=/usr/local/protobuf

再依次执⾏

make // 执⾏15分钟左右
make check // 执⾏15分钟左右
sudo make install
  1. 输入:make

(上一步操作生成了makefile,接下来就可以进行make,这一步消耗时间较长,大概15分钟)

image-20230520174642035

long time …

image-20230520180036526

  1. 输入make check

(这个过程是检测,是可有可无的)

执⾏make check 后,出现以下内容就可以执⾏ sudo make install

image-20230520180237842

如果其中的test出现FAIL,即如下情况:

image-20230520210452117

这个问题是test的模块里面有非常多的测试用例,有些测试用例对服务器环境要求特别严格,需要增大下swap分区,但他是不影响我们后续正常使用的,可以跳过这一步。如果后续出现头文件报错,那是编译器版本比较低,因此我们需要将改g++升级到8,而我们普通安装的方式最高就是4.8.5因此,需要其他的方式配置。

  1. 输入sudo make install

image-20230521142706292

完成。

4. 最后添加内容

到此,需要你回忆⼀下在执⾏configure时,如果当时选择了第⼀种执⾏⽅式,也就是./configure ,那么到这就可以正常使⽤protobuf了。如果选择了第⼆种执⾏⽅式,即修改了安装⽬录,那么还需要在/etc/profile中添加⼀些内容:

sudo vim /etc/profile
# 添加内容如下:
#(动态库搜索路径) 程序加载运⾏期间查找动态链接库时指定除了系统默认路径之外的其他路径
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/protobuf/lib/
#(静态库搜索路径) 程序编译期间查找动态链接库时指定查找共享库的路径
export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/protobuf/lib/
#执⾏程序搜索路径
export PATH=$PATH:/usr/local/protobuf/bin/
#c程序头⽂件搜索路径
export C_INCLUDE_PATH=$C_INCLUDE_PATH:/usr/local/protobuf/include/
#c++程序头⽂件搜索路径
export CPLUS_INCLUDE_PATH=$CPLUS_INCLUDE_PATH:/usr/local/protobuf/include/
#pkg-config 路径
export PKG_CONFIG_PATH=/usr/local/protobuf/lib/pkgconfig/

最后⼀步,重新执⾏/etc/profile⽂件:

source /etc/profile

5.检查是否安装成功

输⼊ protoc --version 查看版本,有显⽰说明安装成功。

cfy@139-159-150-152:~/install/protobuf-21.11$ protoc --version
libprotoc 3.21.11

五. 升级g++到8版本

上述提到,g++不提高到最新版本在后续操作会头文件报错,因此下面我们配置g++编译器

【解决】升级g++到8版本_每天都要进步呀~的博客-CSDN博客

猜你喜欢

转载自blog.csdn.net/NEFUT/article/details/130945050