nowe PHP, gettext i glibc

Paweł Wilk siewca w pld.org.pl
Pią, 6 Lip 2001, 13:33:06 CEST


Ku przestrodze:

Jeśli ktoś będzie pisał programy wykorzystujące gettext to warto zwrócić
uwagę na _pełne_ nazwy języków, tzn. np. pl_PL zamiast pl przy
eksportowaniu do środowiska nazw dla tego, z czego korzysta potem 
biblioteka gettext.

Mój przypadek:

	- aplikacja napisana w PHP z użyciem gettext
	- upgrade glibc i gettext

	Przestały działać tłumaczenia.

Test:

<?
	setlocale("LC_MESSAGES", "pl");
	bindtextdomain("ziarno", "./locale/");
	textdomain("ziarno");
	echo _("testing");
?>

Strace:

[...]
write(1, "\n", 1)                       = 1
open("/usr/lib/locale/pl/LC_MESSAGES", O_RDONLY) = -1 ENOENT (No 
such file or directory)

po zmianie na:

	setlocale("LC_MESSAGES", "pl_PL");

działa, bo plik /usr/lib/locale/pl_PL/LC_MESSAGES ofkors istnieje. :)

Poprzednia wersja aplikacji działała ze starymi glibc i gettext,
więc albo ten błąd wynika ze zmiany położenia plików dla
wsparcia locale, albo z defoltowego zachowania gettext.

Hint: nie trzeba ofkors zmieniać nazw w prywatnej strukturze katalogów
      locale dla samej aplikacji, wystarczy suffix dookreślający język.


to by było na tyle,
może się komuś przyda :>


--
 Pawel Wilk <siefca at pld.org.pl>  [ PLD/GNU/LINUX/SYSADM/DEVEL ]

  "dawaj neo, dawaj, za bielim zajcem!"

			-- Matryca

-------------- następna część ---------
Załącznik, który nie był tekstem został usunięty...
Name: nie znany
Type: application/pgp-signature
Size: 254 bytes
Desc: nie znany
Url : /mailman/pipermail/pld-devel-pl/attachments/20040626/6802dcfa/attachment.bin


Więcej informacji o liście dyskusyjnej pld-devel-pl