Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
8
Help us understand the problem. What is going on with this article?
@hachisukansw

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

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() #一旦終了(これ大事)

以上です

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

8
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
hachisukansw
グラフィカルなものよりもテキストベースが好き。マウスよりキーボードが好き(でも複雑なのは苦手)。だからLinux好き、Markdown使えるQiitaも好き。プログラムはちょろちょとっとしか書かない、でも気が向いたらオブジェクト指向ぽく書きたい。だからRubyが好き、Smalltalkが好き、JavaScriptが好き。正規表現が好き。だから…。 @hachisukansw

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
8
Help us understand the problem. What is going on with this article?