У меня Ubuntu 16.04 и R 3.4.3. Когда я запускаю
install.packages("geojson", dep=TRUE)
в R, я получаю следующую ошибку:
зависимость «protolite» недоступна для пакета «geojson»Поэтому I запустите
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 (версия 0.29.1 в комплекте с Ubuntu 18.04) является ультра-багги. Он не относится к каталогам, указанным в PKG_CONFIG_PATH (пользовательские каталоги не видели в отладочном spew). Мне пришлось построить более новую версию (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)
Я только что нашел, что мой /usr/bin/pkg-config (версия 0.29.1 в комплекте с Ubuntu 18.04) является ультра-багги. Он не относится к каталогам, указанным в PKG_CONFIG_PATH (пользовательские каталоги не видели в отладочном spew). Мне пришлось построить более новую версию (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)