[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#53705: locales 2.1.2-11 breaks perl locale support



Package: locales
Version: 2.1.2-11
Severity: normal

I just upgraded to glibc 2.1.2-11 and this implies perl (5.004 and
5.005) always printing the following error message

$ perl -e exit
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
        LANGUAGE = (unset),
        LC_ALL = (unset),
        LANG = "de_DE"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").

LC_* are unset and LANG is set to "de_DE".

I did some more testing and found out, that the problem depends on the
locales package only.  Upgrading libc6, libc6-dev, gconv-modules and
libc6-bin to version 2.1.2-11 is no problem.

Only if I upgrade locales from 2.1.2-10 to 2.1.2-11 (with or without
installing i18ndata) this causes the above error message of perl.

I did a 
 strace -e open perl -e exit
with both versions of locales and if I compare the output using diff I
get:

[...]
 open("/usr/share/i18n/locale.alias", O_RDONLY) = -1 ENOENT (No such file or directory)
 open("/usr/share/locale/de_DE/LC_MESSAGES", O_RDONLY) = 3
 open("/usr/share/locale/de_DE/LC_MESSAGES/SYS_LC_MESSAGES", O_RDONLY) = 3
-open("/usr/share/locale/de_DE/LC_MONETARY", O_RDONLY) = 3
-open("/usr/share/locale/de_DE/LC_COLLATE", O_RDONLY) = 3
-open("/usr/share/locale/de_DE/LC_TIME", O_RDONLY) = 3
-open("/usr/share/locale/de_DE/LC_NUMERIC", O_RDONLY) = 3
-open("/usr/share/locale/de_DE/LC_CTYPE", O_RDONLY) = 3
-open("/usr/lib/gconv/gconv-modules", O_RDONLY) = 3
-open("/usr/lib/gconv/ISO8859-1.so", O_RDONLY) = 3
+open("/usr/share/i18n/de_DE/LC_MESSAGES", O_RDONLY) = -1 ENOENT (No such file or directory)
+open("/usr/share/locale/de/LC_MESSAGES", O_RDONLY) = 3
+open("/usr/share/locale/de/LC_MESSAGES/SYS_LC_MESSAGES", O_RDONLY) = -1 ENOENT (No such file or directory)
+open("/usr/share/i18n/de/LC_MESSAGES", O_RDONLY) = -1 ENOENT (No such file or directory)
+perl: warning: Setting locale failed.
+perl: warning: Please check that your locale settings:
+       LANGUAGE = (unset),
+       LC_ALL = (unset),
+       LANG = "de_DE"
+    are supported and installed on your system.
+perl: warning: Falling back to the standard locale ("C").
 open("/dev/null", O_RDONLY)             = 3


Maybe someone else understands, why perl doesn't try to open
LC_MONETARY, LC_COLLATE, LC_TIME, LC_NUMERIC, LC_CTYPE, gconv-modules
and ISO8859-1.so with the new locales version, but it doesn't do so.

Ciao

        Roland

-- System Information
Debian Release: potato
Kernel Version: Linux spinnaker 2.2.13 #1 Mit Okt 20 18:48:12 CEST 1999 i586 unknown


Reply to: