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=...
にどのディレクトリを書き込む必要があるかわかりません。
どうすればいいですか?
私の/usr/bin/pkg-config
(Ubuntu 18.04にバンドルされているバージョン0.29.1)が非常にバギーであることがわかりました。 PKG_CONFIG_PATHに記載されているディレクトリは調べません(カスタムディレクトリはデバッグスピューでは見られませんでした)。ソースから新しいバージョン(0.29.2)をビルドする必要がありました。これで問題が解決しました。
それが誰かを助けることを願っています
以下のアクションで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)