From: Ales Popov
NM) libc-5.2.18, ld.so-1.7.14...
Вот в этой библиотеке дело ^^^^^^^^^^ !
Можно просто взять ее с CD Linux.Yes или пересобрать
эту библиотеку.
Только надо в сырцах исправить, - это вот с того
сидюка:
=== Begin 11.r === Eugene Shakhtarin
Локализация koi8-r для версии libc 5.2.18 (ELF).
Сделано в Linux kernel 1.3.57, gcc 2.7.2.
/* static unsigned short toupper_done = 0; static unsigned short tolower_done = 0; */ static unsigned toupper_done = 0; static unsigned tolower_done = 0;
Вот соответствующий патч:
*** ctype.c.orig Tue Jan 16 19:02:43 1996 --- ctype.c Tue Jan 16 19:03:23 1996 *************** *** 54,59 **** --- 54,63 ---- /* Remember which class or conversion is already done. */ static unsigned short class_done = 0; + /* static unsigned short toupper_done = 0; static unsigned short tolower_done = 0; + */ + static unsigned toupper_done = 0; + static unsigned tolower_done = 0; #define SYNTAX_ERROR \
Здесь находятся
http://eugene.mplik.ru/pub/Linux/utils/nls/locale/libc-5.2.18.fix/:
ctype.c -- 6534 исправленный вариант ctype.c
localedef.gz -- 53833 программа, оттранслированная для
отладчика с ключем -g
make SHARED= programs
mkdirhier /usr/share/nls/charmap mkdir /usr/share/nls/locale mkdir /usr/share/locale
7.1) Разместить описания KOI8-R и ru_RU в каталогах
/usr/share/nls/charmap/KOI8-R /usr/share/nls/locale/ru_RU
7.2) Построить описание категорий koi8-r в каталоге
/usr/share/locale/koi8-r/ localedef -c -i /usr/share/nls/locale/ru_RU -f KOI8-R koi8-r
Уже готовый набор описаний категорий koi8-r,
полученный описанным методом, находится в
http://eugene.mplik.ru/pub/Linux/utils/nls/locale/share/locale/koi8-r/
#include #include main() { int c, C; setlocale(LC_ALL, ""); c='й'; C=toupper(c); printf("%c\n", C); C='Й'; c=tolower(C); printf("%c\n", c); }
Comments: info@citmgu.ru
Copyright © CIT