Решить проблемы с линкером ld для сборки исходного кода R - PullRequest
0 голосов
/ 27 марта 2019

При попытке установить R из источника я столкнулся с проблемами компоновщика, в частности: undefined reference to 'u_getVersion_58

Я нашел ограниченную информацию об этой ошибке (например, это сообщение на форуме RStudio ). Несмотря на выполнение apt-get build-dep, эти проблемы сохранялись.

Из этих комментариев Дирка Эдденбюттеля видно, что это относится к версиям libicu. У меня libicu версии 60, а для R 3.6.0 и аналогичных последних версий требуется версия 60.

1 Ответ

0 голосов
/ 27 марта 2019

Мы можем установить предыдущую версию libicu из исходного кода следующим образом:

wget http://download.icu-project.org/files/icu4c/58.2/icu4c-58_2-src.tgz
tar -xf icu4c-58_2-src.tgz
cd icu
make
make install

Однако make может столкнуться с ошибкой компиляции из-за отсутствия xlocale.h.Как указано в этом сообщении github , это можно решить, запустив ln -s /usr/include/locale.h /usr/include/xlocale.h, поскольку xlocale.h - это всего лишь подмножество locale.h, которое было удалено из glibc недавно .После этого make и make install должны быть успешными для ICU версии 58, а затем для R.

...