博客
关于我
Linux下protobuf和 protobuf-c安装使用
阅读量:795 次
发布时间:2023-02-02

本文共 1696 字,大约阅读时间需要 5 分钟。

在Linux环境下安装及使用 protobuf 和 protobuf-c

protobuf 是一种高效、跨平台的数据序列化协议,本文将指导您在 Linux 环境下安装 protobuf 和 protobuf-c,并说明如何通过 protobuf-c 生成 C 语言文件。

1. 下载 protobuf 和 protobuf-c

protobuf 支持多种语言,但不包括 C 语言。为了支持 C 语言开发,需要使用 protobuf-c。以下是下载步骤:

1.1 protobuf 下载地址

从以下链接下载 protobuf 实现:GitHub - protobuf/protobuf: Protocol Buffers

1.2 protobuf-c 下载地址

下载 protobuf-c 实现:GitHub - protobuf-c/protobuf-c: Protocol Buffers for C

下载完成后,将压缩包解压到合适的位置。

2. 安装 protobuf

在 Linux 系统中安装 protobuf:

  • 进入下载目录:

    cd /usr/local/protobuf
  • 解压压缩包:

    tar -zxvf protobuf-all-*.tar.gz
  • 编译安装:

    cd protobuf-*.*/build/c./configure --prefix=/usr/local/protobuf/protobuf-*makemake install
  • 添加环境变量:在 ~/.bashrc 中添加:

    export PATH="$PATH:/usr/local/protobuf/protobuf-*/bin"export PKG_CONFIG_PATH="/usr/local/protobuf/protobuf-*/lib/pkgconfig"

    重新加载环境变量:

    source .bashrc
  • 验证安装:

    protoc --version

    报告输出应类似:

    libprotoc 3.x.y.z
  • 3. 安装 protobuf-c

    在 Linux 系统中安装 protobuf-c:

  • 解压压缩包并进入目录:

    cd /usr/local/protobuftar -zxvf protobuf-c-*.tar.gzcd protobuf-c-*/build/c
  • 编译安装:

    ./configure --prefix=/usr/local/protobuf/protobuf-c-*makemake install
  • 添加环境变量:在 ~/.bashrc 中添加:

    export PATH="$PATH:/usr/local/protobuf/protobuf-c-*/bin"

    重新加载环境变量:

    source .bashrc
  • 验证安装:

    protoc-c --version

    输出应类似:

    protobuf-c 1.x.y/zlibprotoc 3.x.y.z
  • 4. 生成 C 语言文件

    使用 protoc-c 工具生成 C 语言代码:

    1.创建一个用于生成的工作目录:

    mkdir -p /usr/local/protobuf/gen-protocd /usr/local/protobuf/gen-proto

    2.编辑要生成代码的 protobuf 文件:

    vi User.proto

    添加以下内容:

    syntax = "proto3";message User {    int32 sex = 1;    string name = 2;}

    3.生成 C 语言文件:

    protoc-c --c_out=. ./User.proto

    生成的文件包括:

    • User.pb-c.h
    • User.pb-c.c

    这些文件将用于在 C 语言项目中使用 protobuf 实现。

    5. 注意事项

    • 安装过程时间较长,请耐心等待。
    • 添加环境变量后,需要重新加载配置文件。
    • 确保使用与其他依赖无冲突的版本。

    通过以上步骤,您已成功在 Linux 环境下安装并使用 protobuf 和 protobuf-c。

    转载地址:http://sfzfk.baihongyu.com/

    你可能感兴趣的文章
    linux 配置 skywalking
    查看>>
    linux 配置 vsftpd 匿名用户可增加、修改、删除文件
    查看>>
    Linux 重置root密码和修改用户密码
    查看>>
    Linux 问题故障定位的技巧大全
    查看>>
    linux 防火墙操作
    查看>>
    Linux&Debian系统安装nginx
    查看>>
    Linux(Centos)上使用crontab实现定时任务(定时执行脚本)
    查看>>
    Linux(Centos)远程传输文件到另一台电脑机器上---指令(scp)
    查看>>
    Linux(Centos为例)使用Docker安装Label-Studio
    查看>>
    Linux(ubuntu)使用dd从iso制作win7安装u盘(读卡器一样),以及备份分区
    查看>>
    Linux***检测基础学习
    查看>>
    linux+nginx+php+mysql安装及配置
    查看>>
    Linux+oracle修改IP方法
    查看>>
    Linux-----sed 命令详解
    查看>>
    Linux---文件权限
    查看>>
    Linux--gdb/cgdb
    查看>>
    Linux--git
    查看>>
    linux--Linux 各目录及每个目录的详细介绍
    查看>>
    linux--make/进度条
    查看>>
    Linux--NFS和DHCP服务器
    查看>>