$ sudo apt-get install autoconf automake libtool curl make g++ unzip
protobuf-all-[VERSION].tar.gz
文件。./configure
make
make check
sudo make install
sudo ldconfig # 刷新共享库缓存。
$ protoc --version
libprotoc 3.6.1
sudo apt install protobuf-compiler
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
google
文件夹中的内容移动到/usr/local/include/
目录下。 - Jacksudo rm -rf ./protoc
unzip protoc-3.10.1-linux-x86_64.zip -d protoc
chmod 755 -R protoc
BASE=/usr/local
sudo rm -rf $BASE/include/google/protobuf/
sudo cp protoc/bin/protoc $BASE/bin
sudo cp -R protoc/include/* $BASE/include
1)从链接 https://github.com/protocolbuffers/protobuf/releases 下载二进制文件。
2)解压并将目录保存到特定位置(/user/app/protoc)。
3)在 /usr/.bash_profile 中添加以下条目:
export PROTOC_HOME=/user/app/protoc
export PATH=$PROTOC_HOME/bin:$PATH
4)刷新文件 $source /usr//.bash_profile
另一种选择是在下载存储库后逐个运行以下命令:
sudo rm -rf ./protoc
unzip protoc-3.10.1-linux-x86_64.zip -d protoc
chmod 755 -R protoc
BASE=/usr/local
sudo rm -rf $BASE/include/google/protobuf/
sudo cp protoc/bin/protoc $BASE/bin
sudo cp -R protoc/include/* $BASE/include
如果您遇到以下错误,请使用此方法
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文件存在于默认的包含文件夹中
-jX
进行并行运行,其中 X 是您拥有的核心数。 - Omarbash: ./configure: 没有该文件或目录
- Bilalls
命令时,能看到文件configure
吗?如果不能,那么你做错了些什么。 - Martin Thomaconfigure.ac
,但是我无法执行./configure
。 - Bilal