无法从 Sun solaris 中的源安装 R 包。R 中的 iconv 无法从中获取当前区域设置



我正试图在sun solaris机器中从源代码安装R包。当我使用时

> install.packages('iterators', repo=NULL, type='source')

我得到错误

Error in iconv(lines, encoding, "UTF-8", sub = "byte") :
  unsupported conversion from '' to 'UTF-8'

我注意到from字段为空(''),所以我检查iconv{base}手册。上面写着

"所有R平台都支持"(用于当前区域设置的编码)、"latin1"…"

链接:https://stat.ethz.ch/R-manual/R-devel/library/base/html/iconv.html

所以我尝试使用iconv 进行转换

>iconv('abc', '', 'utf-8')

我得到错误

Error in iconv("abc", "", "utf-8") :
  unsupported conversion from '' to 'utf-8'

然而,在我的本地linux机器上,相同的转换工作

> iconv('abc', '', 'utf-8')
[1] "abc"

sun solaris上R的iconv无法从"获取当前区域设置,这有什么特别的原因吗?或者有安装软件包的变通方法吗?

您没有提到Solaris的版本。在Solaris 10上,iconv不接受空字符串(")作为代码集规范。在Solaris11上,您可以使用"char"或"作为iconv来使用当前区域设置的代码集。这在中进行了描述

# man -s 3C iconv_open

最新更新