17
22

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Rでパッケージがインストールできない時の対処法メモ

Last updated at Posted at 2019-07-12

Rで install.packages を使ってパッケージをインストールしようとした時にエラーみたなメッセージが出た時の対処方法のメモです。(20/6/17更新)install.packages じゃなくて package.install って書いたみたいなので訂正しました。ご指摘ありがとうございます。

その1. yes/No/cancelって聞かれる

(現象) パッケージをインストールする際、以下のようなメッセージで止まってしまう。

not_writable
> install.packages("dplyr")
Installing package into ‘/usr/local/lib/R/site-library’
(as ‘lib’ is unspecified)
Warning in install.packages("dplyr") :
  'lib = "/usr/local/lib/R/site-library"' is not writable
Would you like to use a personal library instead? (yes/No/cancel)

(解決策) 最初にパッケージをインストールする時は聞かれるメッセージです。「yes」で良いと思います。 メッセージ内容は/usr/local/lib/R/site-library に書き込む権限がないから、ホームディレクトリ上の個人用ライブラリを使いますか?と聞いているので、他の人と共有する必要がなければ「yes」で問題ないと思います。


(現象) 「yes」を入力したらまた聞いてくる。

create_a_personal_library
Would you like to create a personal library
~/R/x86_64-pc-linux-gnu-library/3.5
to install packages into? (yes/No/cancel)
省略

(解決策) 「yes」で良いと思います。 ホームディレクトリ上の個人用ライブラリを作って良いか?と聞いていますので。

その2. makeがない

(現象) 以下のような感じのエラーです。途中のところで「sh: 1: make: not found」(makeがない)って言っているようです。

makeがないエラー
> install.packages("data.table")
省略
* installing *source* package data.table ...
** package data.table successfully unpacked and MD5 sums checked
** libs
sh: 1: make: not found
Warning in system(cmd) : error in running command
ERROR: compilation failed for package data.table
* removing ~/R/x86_64-pc-linux-gnu-library/3.5/data.table

(解決策) make コマンドがないのでインストールします。make 以外にコンパイラ等も必要となるはずですので、それらをある程度まとめてインストールできる build-essential をインストールします。

build-essentialのインストール
sudo apt install build-essential

その3. 解決案がメッセージに書いてある場合

(現象) メッセージがいっぱい表示されていますがよーく見てみると…。

curlエラー
> install.packages("curl")
* installing *source* package curl ...
** package curl successfully unpacked and MD5 sums checked
Package libcurl was not found in the pkg-config search path.
Perhaps you should add the directory containing `libcurl.pc'
to the PKG_CONFIG_PATH environment variable
No package 'libcurl' found
Package libcurl was not found in the pkg-config search path.
Perhaps you should add the directory containing `libcurl.pc'
to the PKG_CONFIG_PATH environment variable
No package 'libcurl' found
Using PKG_CFLAGS=
Using PKG_LIBS=-lcurl
------------------------- ANTICONF ERROR ---------------------------
Configuration failed because libcurl was not found. Try installing:
 * deb: libcurl4-openssl-dev (Debian, Ubuntu, etc)
 * rpm: libcurl-devel (Fedora, CentOS, RHEL)
 * csw: libcurl_dev (Solaris)
If libcurl is already installed, check that 'pkg-config' is in your
PATH and PKG_CONFIG_PATH contains a libcurl.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=...'
--------------------------------------------------------------------

(解決策) そう、英語で嫌になるかもしれませんが、よーく見てみると「---- ANTICONF ERROR ----」のところに「Try installing:」として試して欲しいことが書かれています。親切ですねー。まずはそのメッセージにしたがってみます。Ubuntuなら libcurl4-openssl-dev をインストールして再度実行してみます。

libcurl4-openssl-devのインストール
sudo apt install libcurl4-openssl-dev

今回のcurlの場合はそれで解決できました。

その4. X11が見つからない

(現象) 以下のエラーは X11 が見つからないようなことを言っています。

X11が見つからないエラー
> install.packages('rgl')
省略
configure: error: X11 not found but required, configure aborted.
ERROR: configuration failed for package rgl

(解決策) X11をどのようにチェックしているかはソースコード中の configure を見るのが良いのですが、とりあえずはX11の開発者向けっぽいパッケージをインストールし再度Rを起動して試してみます。

X11の開発者向けっぽいパッケージのインストール
sudo apt install xorg-dev

とりあえずX11が見つからないエラーはなくなりました。

その4. ファイルが見つからない

(現象) 以下のエラーは GL/glu.h がないようなことを言っています。ファイルがないと言われてもどのパッケージをインストールしたら良いのかが分かりません。

GL/gl.hが見つからないエラー
> install.packages("rgl")
省略
checking GL/glu.h usability... no
checking GL/glu.h presence... no
checking for GL/glu.h... no
configure: error: missing required header GL/glu.h

(解決策) apt-file コマンドを使って対象のファイルが含まれているパッケージを探します。apt-file コマンドがインストールしていない場合は以下のようにしてインストールします。

apt-fileコマンドのインストール
sudo apt install apt-file

apt-fileコマンドを使えば以下のようにファイル名からパッケージを検索することができます。なんとなく libglu1-mesa-dev が良さそうな気がするので、それをインストールします。

apt-fileでGL/glu.hを含むパッケージを検索
$ apt-file search GL/glu.h
emscripten: /usr/share/emscripten/system/include/GL/glu.h
libglu1-mesa-dev: /usr/include/GL/glu.h
libroot-core5.34: /usr/lib/x86_64-linux-gnu/root5.34/cint/include/GL/glu.h
mingw-w64-common: /usr/share/mingw-w64/include/GL/glu.h
mingw-w64-i686-dev: /usr/i686-w64-mingw32/include/GL/glu.h
mingw-w64-x86-64-dev: /usr/x86_64-w64-mingw32/include/GL/glu.h

インストールができたらRを起動して再度インストールを試します。もしエラーが出たらまた検索してって繰り返します。

その5. error setting certificate verify locationsエラー

(現象) github経由でインストールしようとすると以下のようなエラーが表示されてできないことがあります。Microsoft R Openで表示されました。

shinyのインストール
> devtools::install_github("ua-parser/uap-r")
Installation failed: error setting certificate verify locations:
  CAfile: microsoft-r-cacert.pem
  CApath: none

(解決策) このエラーは curl が出していますので CRANのcurl をインストールしRを一旦終了し再度Rを起動して試してみます。

curlのインストール
> install.packages("curl")
> q() #一旦終了(これ大事)

以上です

また違ったメッセージに出会ったら追加しようと思います。

17
22
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
17
22

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?