無法安裝 R 的 geojson 套件

無法安裝 R 的 geojson 套件

我有 Ubuntu 16.04 和 R 3.4.3。當我跑步時

install.packages("geojson", dep=TRUE)

在 R 中,我收到以下錯誤:

依賴項“protolite”不適用於套件“geojson”

因此我跑步

install.packages("protolite", dep=TRUE)

我得到:

Configuration failed because protobuf was not found. Try installing:
 * deb: libprotobuf-dev (Debian, Ubuntu, etc)
 * rpm: protobuf-devel (Fedora, EPEL)
 * csw: protobuf_dev (Solaris)
 * brew: protobuf (OSX)
If protobuf is already installed, check that 'pkg-config' is in your
PATH and PKG_CONFIG_PATH contains a protobuf.pc file. If pkg-config
is unavailable you can set INCLUDE_DIR and LIB_DIR manually via:
R CMD INSTALL --configure-vars='INCLUDE_DIR=... LIB_DIR=...'

但是,protoc --version在終端機中運行我得到

libprotoc 2.6.1

所以看來我已經安裝了最新版本。我也嘗試protobuf.pc複製/usr/lib/pkconfig/PKG_CONFIG_PATH設置

export PKG_CONFIG_PATH=/usr/lib/pkgconfig

沒有成功。我不知道如何檢查是否pkg-config在我的中 PATH,也不知道如何遵循後面的手動說明。特別是,我不知道應該為INCLUDE_DIR=...和寫哪些目錄LIB_DIR=...

我應該如何進行?

答案1

您可以透過以下操作安裝 R 軟體包

#1. add R 3.4.3 repository if not added before
cat <<EOF | sudo tee /etc/apt/sources.list.d/r-cran.list
deb https://cloud.r-project.org/bin/linux/ubuntu xenial/
EOF

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E084DAB9

#2. add repository for libjq-dev
sudo add-apt-repository -y ppa:opencpu/jq

#3. update package lists
sudo apt-get update

#4. install R and dependencies
sudo apt-get install r-base-dev r-base-core libjq-dev libcurl4-openssl-dev \
libssl-dev libprotobuf-dev libjq-dev libv8-3.14-dev protobuf-compiler

#5. launch R and install geojson package:
R
> install.packages("geojson", dep=TRUE)

答案2

我剛剛發現我的/usr/bin/pkg-config(與 Ubuntu 18.04 捆綁的版本 0.29.1)有很多 bug。它不會查看 PKG_CONFIG_PATH 中提到的目錄(在偵錯噴射中沒有看到自訂目錄)。我必須從原始碼建立更新的版本(0.29.2)。這解決了我的問題。

希望它可以幫助某人

相關內容