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)에 버그가 매우 많다는 것을 발견했습니다 . PKG_CONFIG_PATH에 언급된 디렉터리를 조사하지 않습니다(디버그 분사에서는 사용자 지정 디렉터리가 표시되지 않음). 소스에서 최신 버전(0.29.2)을 빌드해야 했습니다. 이로 인해 내 문제가 해결되었습니다.
누군가에게 도움이 되길 바랍니다