protoc:找不到命令(Linux)

sgm*_*mbd 15 protocol-buffers

我正在尝试在 Linux 机器上使用 Protobuf。我从github下载了预编译的。

当我尝试编译我的 .proto 文件或只是检查 protobuf 版本时,它说

协议:找不到命令。

我使用预编译的 protobuf 版本在 Windows 机器上尝试了相同的步骤,并且在那里工作正常。

Ami*_*mit 13

为 Linux 和 Mac 安装 protoc

Linux

PROTOC_ZIP=protoc-3.15.8-linux-x86_64.zip
curl -OL https://github.com/google/protobuf/releases/download/v3.15.8/$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
Run Code Online (Sandbox Code Playgroud)

Mac OS X

brew install protobuf

Run Code Online (Sandbox Code Playgroud)

或者,如果您没有 Homebrew。

PROTOC_ZIP=protoc-3.15.8-osx-x86_64.zip
curl -OL https://github.com/google/protobuf/releases/download/v3.15.8/$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
Run Code Online (Sandbox Code Playgroud)

来源:http : //google.github.io/proto-lens/installing-protoc.html


小智 12

对于 Linux Ubuntu 20,仅使用snap安装

snap install protobuf --classic
Run Code Online (Sandbox Code Playgroud)

或通过apt,使用:

sudo apt install protobuf-compiler
Run Code Online (Sandbox Code Playgroud)


Mad*_*omy 6

我知道这个问题是专门针对 Linux 提出的,但我找不到任何与在 Windows 上解决此错误相关的问题。

这可能会帮助那些在 Windows 上遇到相同错误的人。

步骤1:从链接protobuf下载 Windows 发行版 (protoc-3.5.0-win32.zip)并解压到本地文件夹

步骤2:将文件夹路径添加到系统环境变量中的路径中。

在此输入图像描述

在此输入图像描述

步骤 3:关闭命令提示符,重新启动命令提示符并尝试命令 protoc

在此输入图像描述


Tha*_*ien 5

你可以尝试一下:

安装 grpc 和 protobuf

brew install grpc protobuf


Ric*_*ams 4

我可能会迟到,但在尝试运行协议时,我也遇到了“命令未找到”的情况。原来只是缺少执行权限。快速chmod +x protoc为我解决了这个问题。