如何在 Ubuntu 16.04 上安装 protoc?

如何在 Ubuntu 16.04 上安装 protoc?

如何在 Ubuntu 16.04 上安装 protoc(用于生成 Java 的 protobuf 编译器)?

答案1

https://github.com/protocolbuffers/protobuf/blob/master/src/README.md

先决条件

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

安装

  1. 这一页,下载protobuf-all-[VERSION].tar.gz
  2. 提取内容并更改目录
  3. ./configure
  4. make
  5. make check
  6. sudo make install
  7. sudo ldconfig # refresh shared library cache.

检查是否有效

$ protoc --version
libprotoc 3.6.1

答案2

sudo apt install protobuf-compiler

答案3

如果您不是 C++ 用户和/或不想自己编译,安装当前版本 protoc 的最简单方法是从发布页面下载预构建的二进制文件。

https://github.com/protocolbuffers/protobuf/releases

要安装,只需将此二进制文件放在 PATH 中的某个位置(例如 /usr/local/bin)。

(如果您打算使用包含的众所周知的类型,那么不要忘记将“include”目录的内容复制到某处,例如 /usr/local/include/。)

例子:

wget https://github.com/protocolbuffers/protobuf/releases/download/v21.12/protoc-21.12-linux-x86_64.zip
sudo unzip -o protoc-21.12-linux-x86_64.zip -d /usr/local bin/protoc
sudo unzip -o protoc-21.12-linux-x86_64.zip -d /usr/local 'include/*'
# now test:
protoc --version

答案4

如果您遇到以下错误,请使用此方法

google/protobuf/descriptor.proto:未找到文件。google
/protobuf/duration.proto:未找到文件。google
/protobuf/timestamp.proto:未找到文件。

PROTOC_ZIP=protoc-3.7.1-linux-x86_64.zip
curl -OL https://github.com/protocolbuffers/protobuf/releases/download/v3.7.1/$PROTOC_ZIP
sudo unzip -o $PROTOC_ZIP -d /usr/local bin/protoc
sudo unzip -o $PROTOC_ZIP -d /usr/local 'include/*'
rm -f $PROTOC_ZIP

当你使用 protoc-gen-go 进行 go 生成时这很有用,因为它要求基本 proto 文件存在于默认包含文件夹中

相关内容