解决构建R源代码的ld链接器问题

icomxhvb  于 11个月前  发布在  其他
关注(0)|答案(1)|浏览(69)

在尝试从源代码安装R时,我遇到了链接器问题,特别是:undefined reference to 'u_getVersion_58
我发现有关此错误的信息有限(例如,this post on the RStudio forum)。尽管运行apt-get build-dep,这些问题仍然存在。
these comments by Dirk Eddenbuettel可以明显看出它与libicu版本有关。我有libicu版本60,而R 3.6.0和类似的最近版本似乎需要版本58。

ijxebb2r

ijxebb2r1#

我们可以从源代码安装libicu的早期版本,如下所示:

wget https://github.com/unicode-org/icu/releases/download/release-58-3/icu4c-58_3-src.tgz
tar -xf icu4c-58_2-src.tgz
cd icu
make
make install

字符串
然而,make很可能会因为缺少xlocale.h而遇到编译错误。如on this github post所示,这可以通过运行ln -s /usr/include/locale.h /usr/include/xlocale.h来解决,因为xlocale.h只是最近从glibc中删除的locale.h的子集。在此之后,makemake install应该在icu版本58中成功,然后在R中成功。

相关问题