Rとは,オープンソース・フリーソフトウェアの統計解析向けのプログラミング言語及びその開発実行環境である(Wikipediaより).org-modeと同じくらい必要不可欠なRではあるが,定期的にupdateする必要がある.いや,まぁ,したほうが良い,というか,しないと新しいパッケージが試せなかったりするので,しないではいられない.しかし,updateすると,たいていどこかでハマる.そこで,今回は,ハマったときの対処法を自分のためにまとめておくことにする.ハマるのはbioconductorの方が多いような気がする.ちなみに当方の環境は,MacBook Pro (15-inch, Late 2016) macOS Sierra 10.12.6である.先日もRを3.5.1にupdateしてハマったばかりである…..(^^;;;
gccのリンク絡みのトラブル 大体は以下で直ることが多い(r has dependency on gcc@6, but only lists gcc (which has updated to 7) #5587)
$ brew link --overwrite gcc XMLが入らない XMLを入れるのが目的ではなく,なにか別のパッケージをインストールしようとして,それがXMLに依存しており,XMLを入れようとしてハマることが多いと思う.エラーメッセージは,configure: error: “libxml not found”である.しかし,homebrewで,brew listしてみると,libxml2はインストールされている.このあたりは,Installing R package XML on MacOS 10.13.6と同じである.対処法は,同サイトや引用元のCannot install XML package in rにある通り,以下のようにコンパイラーに正しいxml2-configの場所を教えてやれば良い.
Sys.setenv(XML_CONFIG = "/usr/local/Cellar/libxml2/2.9.7/bin/xml2-config") なお,上記を入力するのはRのコンソールである.通常のterminalにexportで入力しても効かないので注意すること!(これでどれだけ時間を無駄にしたことか...(ToT))
Cairoなどのインストール時に,#include <X11/Xlib.h> でハマる. ‘X11/Xlib.h’ file not found, #include <X11/Xlib.h> のようなエラーが出てコンパイルできないことがある(例えば,“Cairo” packageなど).要するにXlib.hの在り処が分からんということである.mdfind(Mac版のlocate)で探してみると,以下のような結果が得られる.
$ mdfind -name Xlib.h | grep X11 /opt/X11/include/cairo/cairo-xlib.h /opt/X11/include/X11/Xlib.