Установка R завершается неудачно из-за "неопределенной ссылки на libiconv"
У меня проблема с установкой R 3.5.1. Хотя я определил путь к библиотеке "libiconv" в "cshrc", установка завершается с таким сообщением:
-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 ответа
Я мог бы понять это, переустановив R с помощью Conda. Не только 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
Наслаждаться.
Вы, кажется, используете систему glibc (свидетели: компилятор, который нацелен x86_64-redhat-linux
и тег centos
что вы установили).
В системе glibc вам не нужен GNU libiconv, потому что в glibc уже есть полнофункциональная утилита iconv. Так что просто удалите libiconv, затем пересоберите R с нуля (make distclean
; configure
; make
).
Я понял это, отредактировав $PATH,
make
был введен в заблуждение кондой.
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
У меня была такая же ошибка. Из ваших комбинированных ответов я понял, что это Конда. Исправить:
-
conda deactivate
-
make distclean
,configure
а такжеmake