我正在寻找在Arch Linux上安装protobuf 2.5.0,以便在操作系统上安装Protoc-2.5.0,这样我就可以继续从源代码构建Hadoop2.6.0,并使我的生活变得轻松!)
顺便说一句,当hadoop是从源代码构建时,Protobuf2.6.0不编译,我也尝试过这样做。Ubuntu14.04附带了Proc2.5.0。我不想使用Ubuntu。
请先检查屏幕截图(没有Protobuf2.5.0),因为问题就在那里。我想我得到了下面的例外,我知道protoc目前还没有安装在arch linux中。
错误未能在hadoop-protoc项目上执行目标org.apache.hadoop:hadoop-maven-plugins:2.6.0:protoc (编译-原版):org.apache.maven.plugin.MojoExecutionException:'protoc - version‘没有返回版本->帮助1
请帮帮我,因为,从两天开始,我每天花了4个小时,没有运气。
发布于 2015-04-22 13:38:41
编译Google的原型非常容易。我最初是在自己编译hadoop的时候发现如何在这篇博客文章上做这个工作的。
但这是我的版本:
$ cd /usr/local/src/
$ wget https://github.com/google/protobuf/releases/download/v2.5.0/protobuf-2.5.0.tar.gz
$ tar xvf protobuf-2.5.0.tar.gz
$ cd protobuf-2.5.0
$ ./autogen.sh
$ ./configure --prefix=/usr
$ make
$ make install
$ protoc --version
安装java的原型
$ cd java
$ mvn install
$ mvn package
你该走了。
要使您能够安装不同版本的protobuf,请安装stow
,然后将./configure --prefix=/usr
更改为./configure --prefix=/usr/local/stow/protobuf-2.5.0
然后用stow将protobuf链接到您的系统:
$ cd /usr/local/stow
$ stow protobuf-2.5.0
注意:默认情况下,stow
使用/usr/local/bin。确保在你的$PATH
中
为了解开原始人的那个版本,
$ stow -D protobuf-2.5.0
希望这能帮上忙。
发布于 2018-08-03 13:19:27
我想知道为什么上面的答案被否决了,甚至我还要执行更多的步骤(除了Rudker接受的答案),才能在Ubuntu上安装Protobuf2.5。
为了每个人的利益,把额外的步骤留在这里:
响应错误的apt-get install autoconf
:./autogen.sh: autoreconf: not found
for命令:./autogen.sh
响应错误的apt-get install libtool
:autoreconf: libtoolize is needed because this package uses Libtool
for命令:./autogen.sh
响应错误的apt install g++
:configure: error: C++ preprocessor "/lib/cpp" fails sanity check
for命令:./configure --prefix=/usr
发布于 2016-02-26 18:16:01
一个更容易但不是未来的证明解决方案(对于未来的查询)将是转到Archives:http://seblu.net/a/archive/packages/p/protobuf/
卸载更新版本的protobuf,并通过pacman -U protobuf 2.5.x安装下载的软件包。
尽管每当您通过pacman升级Arch包时,都需要确保您正在进行以下操作: sudo --忽略protobuf
https://stackoverflow.com/questions/29797763
复制相似问题