Message-ID: <CALEXWq1rLQuMEU+13RN4N_=+RFF9+FBxzU07BouZ+L6rQ4h7Sw@mail.gmail.com>
Date: 2019-10-07T12:52:35Z
From: IƱaki Ucar
Subject: R from EPEL 8 missing dependency on glibc-langpack
In-Reply-To: <CABFfbXtF-oJFVwsanu3KP+iYSjM7EeuKKD_M0zG=4KWtCfirJQ@mail.gmail.com>
On Mon, 7 Oct 2019 at 11:13, Jeroen Ooms <jeroenooms at gmail.com> wrote:
>
> I think R from EPEL 8 is missing a dependency on glibc-langpack-en or
> similar. Testing with the new CentOS 8 docker image:
This never was a dependency. There is no reason to depend particularly
on an English locale.
> docker run -it centos:8 bash
>
> And then in docker:
>
> yum install epel-release
> yum config-manager --set-enabled PowerTools
> yum install R-devel
>
> Installation succeeds but when I start R:
>
> During startup - Warning messages:
> 1: Setting LC_CTYPE failed, using "C"
> 2: Setting LC_COLLATE failed, using "C"
> 3: Setting LC_TIME failed, using "C"
> 4: Setting LC_MESSAGES failed, using "C"
> 5: Setting LC_MONETARY failed, using "C"
> 6: Setting LC_PAPER failed, using "C"
> 7: Setting LC_MEASUREMENT failed, using "C"
>
> Installing glibc-langpack-en fixes the problem. Took me a while to
> figure this out; I am guessing a lot of users will run into this.
This has nothing to do with R. This is the issue:
$ locale
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=
If you try Centos 7:
$ locale
LANG=
LC_CTYPE="POSIX"
LC_NUMERIC="POSIX"
LC_TIME="POSIX"
LC_COLLATE="POSIX"
LC_MONETARY="POSIX"
LC_MESSAGES="POSIX"
LC_PAPER="POSIX"
LC_NAME="POSIX"
LC_ADDRESS="POSIX"
LC_TELEPHONE="POSIX"
LC_MEASUREMENT="POSIX"
LC_IDENTIFICATION="POSIX"
LC_ALL=
And if you try Fedora rawhide:
$ locale
LANG=C.UTF-8
LC_CTYPE="C.UTF-8"
LC_NUMERIC="C.UTF-8"
LC_TIME="C.UTF-8"
LC_COLLATE="C.UTF-8"
LC_MONETARY="C.UTF-8"
LC_MESSAGES="C.UTF-8"
LC_PAPER="C.UTF-8"
LC_NAME="C.UTF-8"
LC_ADDRESS="C.UTF-8"
LC_TELEPHONE="C.UTF-8"
LC_MEASUREMENT="C.UTF-8"
LC_IDENTIFICATION="C.UTF-8"
LC_ALL=
I'm not sure why en_US.UTF-8 ended up in the Centos 8 image, but it
should be C.UTF-8 instead.
I?aki