3

我正在使用 R 版本 3.4.2 开发 Ubuntu 16.04。

我想安装 R-Package“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。所以也许这个删除/新安装给我的电脑带来了一些混乱。

4

2 回答 2

7

使用

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

为我工作。

于 2018-03-30T21:01:22.820 回答
1

对于任何有同样问题的人。我检查了 Synaptic 包管理器,发现并非所有 libprotobuf 版本都已安装。事实上,只安装了一个精简版。安装所有“libprotobuf-dev 2.6.1-1.3”使其工作。

于 2017-11-05T15:25:53.423 回答