R-Package tmap/protolite安装失败:

4
我正在使用Ubuntu 16.04和R版本3.4.2。我想安装R包“protolite”(更准确地说,我想安装“tmap”,其中protolite是一个先决条件)。我已经安装了libprotocol版本2.6.1:
$ protoc --version

返回libprotoc 2.6.1。

当我输入install.packages "protolite"时,R会给出警告:

Package protobuf was not found in the pkg-config search path.
Perhaps you should add the directory containing 'protobuf.pc'
to the PKG_CONFIG_PATH environment variable
No package 'protobuf' found 

稍后安装过程失败,出现以下错误:

/usr/bin/ld: cannot find -lprotobuf
collect2: error: ld returned 1 exit status

由于已安装了libprotocoll,我搜索了pc文件:

apt-file search protobuf.pc

返回的

libprotobuf-dev: /usr/lib/x86_64-linux-gnu/pkgconfig/protobuf.pc

所以我添加了。
export PKG_CONFIG_PATH=/usr/lib/x86_64-linux-gnu/pkgconfig

然而,这并没有解决问题。有人能帮帮我吗?

注意:我花了几个小时的时间尝试安装“tmap”,起初我的问题是我已经安装了libprotocol 3.2,但我不得不删除它以安装tmap/protolite,因为安装需要libprotocol 2.6.1。所以也许这次删除/重新安装在我的计算机上导致了一些混乱。

2个回答

8

使用

sudo apt-get install -y libprotobuf-dev protobuf-compiler

对我有用。


1

对于遇到相同问题的人。我检查了Synaptic软件包管理器,发现并没有安装所有的libprotobuf版本。实际上,只安装了一个轻量级版本。安装所有“libprotobuf-dev 2.6.1-1.3”使其正常工作。


我理解你的痛苦 - 我自己不久前也经历了这个过程,让tmap与Travis-CI配合工作真是一项艰巨的任务。虽然值得,但绝对不容易... - Jindra Lacko

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接