R的安装失败,因为“对libiconv的引用未定义”

时间:2018-12-04 09:56:56

标签: r centos iconv libiconv

我在安装R 3.5.1时遇到问题。尽管我已经在“ cshrc”中定义了库“ libiconv”的路径,但是安装失败并显示以下消息:

-L"../../lib" -lRblas -L/usr/lib/gcc/x86_64-redhat-linux/4.4.4 -lgfortran -lm   -lreadline  -lpcre -llzma -lbz2 -lz -lrt -ldl -lm
platform.o: In function `do_eSoftVersion':
/opt/local/rstudio/R-3.5.1/src/main/platform.c:3088: undefined reference to `_libiconv_version'
sysutils.o: In function `Riconv':
/opt/local/rstudio/R-3.5.1/src/main/sysutils.c:799: undefined reference to `libiconv'
/opt/local/rstudio/R-3.5.1/src/main/sysutils.c:799: undefined reference to `libiconv'
/opt/local/rstudio/R-3.5.1/src/main/sysutils.c:799: undefined reference to `libiconv'
/opt/local/rstudio/R-3.5.1/src/main/sysutils.c:799: undefined reference to `libiconv'
sysutils.o: In function `Riconv_close':
 ...

顺便说一句,我没有root特权。

经过2天的搜索,我找不到原因。

任何帮助将不胜感激。

4 个答案:

答案 0 :(得分:0)

您似乎正在使用glibc系统(目击者:针对x86_64-redhat-linux的编译器和您设置的标签centos)。

在glibc系统上,您不需要GNU libiconv,因为glibc具有已经包含的全功能iconv工具。因此,只需卸载libiconv,然后从头开始重建R(make distclean; configure; make)。

答案 1 :(得分:0)

我可以通过使用conda重新安装R来解决。不仅R,其他所需的库和rstudio也可以通过conda轻松安装。例如,R,rstudio和plotly(一个库)是通过以下命令安装的:

conda install -c r r-essentials —-prefix=/where/to/install
conda install -c r rstudio  —-prefix=/where/to/install
conda install -c conda-forge r-plotly —-prefix=/where/to/install

享受。

答案 2 :(得分:0)

我通过编辑$ PATH弄清楚了,make被conda误导了。

echo $PATH
:/gatk:/opt/miniconda/envs/gatk/bin:/opt/miniconda/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/gatk:/opt/miniconda/envs/gatk/bin:/opt/miniconda/bin:
export PATH

答案 3 :(得分:0)

我有同样的错误。从您的综合答案中,我认为是康达。修复:

  • conda deactivate
  • make distcleanconfiguremake