hack のためのネタ帳, etc,,,

Install

以下のようにすればよいが
install.packages("ggplot2")
CRAN から tarball 拾って来て C/C++ でコンパイルする際に、
...
* installing *source* package ‘glue’ ...
**  パッケージ ‘glue’ の解凍および MD5 サムの検証に成功しました
** libs
gcc -I/usr/lib/R/include -DNDEBUG        -ggdb -O2 -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector-strong --param=ssp-buffer-size=4 -std=gnu99 -fdebug-prefix-map=/cygdrive/e/cyg_pub/devel/R/R-3.4.4-1.x86_64/build=/usr/src/debug/R-3.4.4-1 -fdebug-prefix-map=/cygdrive/e/cyg_pub/devel/R/R-3.4.4-1.x86_64/src/R-3.4.4=/usr/src/debug/R-3.4.4-1  -c glue.c -o glue.o
gcc -I/usr/lib/R/include -DNDEBUG        -ggdb -O2 -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector-strong --param=ssp-buffer-size=4 -std=gnu99 -fdebug-prefix-map=/cygdrive/e/cyg_pub/devel/R/R-3.4.4-1.x86_64/build=/usr/src/debug/R-3.4.4-1 -fdebug-prefix-map=/cygdrive/e/cyg_pub/devel/R/R-3.4.4-1.x86_64/src/R-3.4.4=/usr/src/debug/R-3.4.4-1  -c init.c -o init.o
gcc -I/usr/lib/R/include -DNDEBUG        -ggdb -O2 -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector-strong --param=ssp-buffer-size=4 -std=gnu99 -fdebug-prefix-map=/cygdrive/e/cyg_pub/devel/R/R-3.4.4-1.x86_64/build=/usr/src/debug/R-3.4.4-1 -fdebug-prefix-map=/cygdrive/e/cyg_pub/devel/R/R-3.4.4-1.x86_64/src/R-3.4.4=/usr/src/debug/R-3.4.4-1  -c trim.c -o trim.o
g++ -shared -L/usr/lib/R/lib -o glue.dll glue.o init.o trim.o -L/usr/lib/R/lib -lR -lintl -lpcre -llzma -lbz2 -lz -ltirpc -lrt -ldl -lm -liconv -licuuc -licui18n
/usr/lib/gcc/x86_64-pc-cygwin/6.4.0/../../../../x86_64-pc-cygwin/bin/ld: -lintl が見つかりません
/usr/lib/gcc/x86_64-pc-cygwin/6.4.0/../../../../x86_64-pc-cygwin/bin/ld: -lpcre が見つかりません
/usr/lib/gcc/x86_64-pc-cygwin/6.4.0/../../../../x86_64-pc-cygwin/bin/ld: -llzma が見つかりません
/usr/lib/gcc/x86_64-pc-cygwin/6.4.0/../../../../x86_64-pc-cygwin/bin/ld: -lbz2 が見つかりません
/usr/lib/gcc/x86_64-pc-cygwin/6.4.0/../../../../x86_64-pc-cygwin/bin/ld: -lz が見つかりません
/usr/lib/gcc/x86_64-pc-cygwin/6.4.0/../../../../x86_64-pc-cygwin/bin/ld: -ltirpc が見つかりません
/usr/lib/gcc/x86_64-pc-cygwin/6.4.0/../../../../x86_64-pc-cygwin/bin/ld: -liconv が見つかりません
collect2: エラー: ld はステータス 1 で終了しました
make: *** [/usr/lib/R/share/make/shlib.mk:6: glue.dll] エラー 1
ERROR: compilation failed for package ‘glue’
* removing ‘/usr/lib/R/site-library/glue’
...
みたいな感じで依存パッケージが片っ端からコンパイルに失敗する。

という事で、少なくとも以下の devel パッケージが必要
  • libintl-devel
  • libpcre-devel
  • liblzma-devel
  • libbz2-devel
  • zlib-devel
  • libtirpc-devel
  • libiconv-devel
以下のようにして、インストールしておくことで解決した。
apt-cyg install libintl-devel libpcre-devel liblzma-devel libbz2-devel zlib-devel libtirpc-devel libiconv-devel

コメントをかく


「http://」を含む投稿は禁止されています。

利用規約をご確認のうえご記入下さい

Wiki内検索

フリーエリア

編集にはIDが必要です