[horde] Translations not working on Solaris

Jan Schneider jan at horde.org
Thu May 13 15:41:49 UTC 2010


Zitat von Robin John West <Robin.West at dal.ca>:

> Quoting Jan Schneider <jan at horde.org>:
>
>> Zitat von Robin John West <Robin.West at DAL.CA>:
>>
>>> Quoting Robin John West <Robin.West at Dal.Ca>:
>>>
>>>> Horde 3.3.4, IMP 4.3.4, Solaris 10, Sun WebStack 1.5 (Apache 2.2, PHP 5.2)
>>>>
>>>> Since we upgraded our Horde/IMP installation and moved to new  
>>>> servers (from RH Linux to Solaris), we have been unable to get  
>>>> translations working. If I change my preferred language via  
>>>> options, only the Help and the occasional bit of text (eg in date  
>>>> strings) gets displayed in the new language; the rest of the  
>>>> interface stays in english. We have all the relevant locale files  
>>>> installed.
>>>>
>>>> The langtest.php example script included in the TRANSLATIONS doc  
>>>> works fine from both the command line and via web.
>>>>
>>>> I have tried rebuilding the translations for Solaris using  
>>>> translation.php as noted in the TRANSLATIONS doc. We had to make  
>>>> changes to translation.php to make it pick up the right GNU  
>>>> gettext utilities (eg "ggettext" instead of "gettext", etc). It  
>>>> now runs successfully except for an error message displayed right  
>>>> after it finishes building the .mo files for Horde:
>>>>
>>>> Warning: an error has occured:
>>>> 2052 translated messages.
>>>>
>>>> This error message is also accompanied by a core dump. No PHP  
>>>> errors appear in the apache error log. The script continues on  
>>>> with the other modules we have installed (ingo, imp, turba) and  
>>>> finishes successfully.
>>>>
>>>> Anyone have any ideas as to what's going wrong? Thanks in advance ...
>>>>
>>> Further info ... we determined that the webserver was trying to  
>>> access directories such as (for example)  
>>> "horde/locale/fr_FR.UTF-8/" rather than "horde/locale/fr_FR/". So  
>>> we can put in a quick fix by creating symbolic links for the  
>>> .UTF-8 directories that it is looking for. But we would still like  
>>> to know how Horde determines the available locales and how they  
>>> get mapped to the translation files. Can anyone explain this for us?
>>
>> The mapping is done in config/nls.php.
>>
>> Jan.
>>
>
> Thanks Jan for the info. I took a look at nls.php and tried changing  
> some settings there but couldn't find a way to get it working. There  
> is no "fr_FR.UTF-8" anywhere in nls.php, so how does it come up with  
> that name? In our prefs backend, my language preference is shown as  
> "fr_FR"...
>
> As I said previously, all locales are installed on the server,  
> including "fr", "fr_FR", "fr_FR.UTF-8", "fr_FR.ISO8859-1", and a ton  
> of others for all available languages.

You have a very broken gettext implementation (i.e. Solaris'  
implementation). We use the locale fr_FR.UTF-8, if it is supported on  
your system. Gettext should still look for fr_FR/ folders to find  
message locales, not fr_FR.UTF-8/.

Jan.

-- 
Do you need professional PHP or Horde consulting?
http://horde.org/consulting/



More information about the horde mailing list