From: Alexander Bokovoy <ab@avilink.net> To: sisyphus@linuxteam.iplabs.ru Subject: Re: [devel] Re: [sisyphus] I gtk+-1.2.9 Date: Sun, 11 Mar 2001 21:28:51 +0200 Message-ID: <20010311212849.I1408@avilink.net> (raw) In-Reply-To: <20010311222136.1e3ca241.vsu@mivlgu.murom.ru>; from vsu@mivlgu.murom.ru on Sun, Mar 11, 2001 at 10:21:36PM +0300 On Sun, Mar 11, 2001 at 10:21:36PM +0300, Sergey Vlasov wrote: > On Sun, 11 Mar 2001 20:53:50 +0200 > Alexander Bokovoy <ab@avilink.net> wrote: > > > On Sun, Mar 11, 2001 at 08:43:18PM +0300, Sergey Vlasov wrote: > > > > Но там еще есть ошибки, так что я --with-native-locale убрал, и > > > > sylpheed-0.4.62cvs4 (из Sisyphus, покореженный на предмет сборки > > старым > > > > rpm) работает, и не падает (им, собственно, и пишу :-). Но опять же > > с > > > > XFree 3.3.6. > > > > > > Продолжаем исследование. У меня не совсем Sisyphus - glibc пока 2.1.3 > > > с Appendix, XFree 3.3.6, но rpm, perl, bash, tar, bzip2, fileutils > > > свежие, так что пакеты из новых src.rpm собираются. Итак, результаты: > > > 1. "Wide characters" для mbstowcs (glibc) и для Xwc* - это не одно и > > > то же! По крайней мере, сейчас в gdb проверил - в 1.2.9-ipd4mdk > > > gdk_draw_text_wc передает в XwcDrawString текст в Unicode (но с родным > > > порядком байтов) - именно так работает glibc (2.1.3). Но на экране > > > рисуется, похоже, младший байт этого значения в кодировке koi8-r. В > > > версии 1.2.8 проблем нет - там все преобразования идут через Xmb/Xwc*, > > а > > > в 1.2.9 при их смешивании получается ерунда. Возможно, это проблема > > > старой glibc (пока не обновил, тем более, говорят, процесс сложный, а > > > описания я не нашел; тащить инсталлятор нет возможности). Или же > > виноват > > > старый Xlib 3.3.6. > > В новой glibc (2.2.2) порядок следования байт в Wide characters зависит > > от ендианности машины, в частности, на PC -- LE. > > Так у меня не 2.2.2, а 2.1.3, и тоже LE (по крайней мере в тестовой > программке в массиве из wchar_t после mbstowcs() вижу нормальные > значения ISO10646/Unicode, а не с переставленными байтами). Видимо, это > как раз и есть кодировка "INTERNAL", использующаяся в gconv. А вот iconv > при запросе ISO10646 вроде бы должен выдавать BE независимо от машины. Я не рекомендую пользоваться именем кодировки UNICODE в iconv -- оно не портабельное. А вот UCS2-LE/BE -- портабельные. Собственно, поэтому многие пользуются UTF-8. Это лирическое отступление, а если серьезно -- в glibc такого имени (ISO10646) для кодировки нет, там только UNICODE, но он выдает с привязкой к порядку байт на машине. INTERNAL, кстати, означает UCS2-LE на PC. > Итак, получается, что wchar_t в glibc - это ISO10646 с родным для машины > порядком байт, и в glibc 2.1.3, и в 2.2.2. Тогда возникает вопрос, как > рассматривают wchar_t функции Xwc* - тоже как ISO10646 или по-своему? Во > всяком случае, у меня на 3.3.6 XwcDrawString получает на вход юникод и > рисует вместо него, похоже, просто младший байт. Может быть, в 4.x это > исправлено? Завтра придется смотреть на разных машинах и сравнивать. Насколько я знаю, именно в 4-тых сериях и исправлено. -- Sincerely yours, Alexander Bokovoy The Midgard Project | www.midgard-project.org | Aurora R&D team Minsk Linux Users Group | www.minsk-lug.net | www.aurora-linux.com ALT Linux Team | www.alt-linux.org | Architecte Open Source -- Out of sight is out of mind. -- Arthur Clough
next prev parent reply other threads:[~2001-03-11 19:28 UTC|newest] Thread overview: 50+ messages / expand[flat|nested] mbox.gz Atom feed top 2001-03-03 17:10 Aleksey Novodvorsky 2001-03-03 18:14 ` Vlad Harchev 2001-03-03 19:11 ` [devel] " Aleksey Novodvorsky 2001-03-03 18:42 ` Vlad Harchev 2001-03-03 20:36 ` Aleksey Novodvorsky 2001-03-11 13:06 ` Vlad Harchev 2001-03-11 14:07 ` rider 2001-03-11 14:10 ` Sergey Vlasov 2001-03-11 14:53 ` Vlad Harchev 2001-03-11 16:24 ` Sergey Vlasov 2001-03-11 17:00 ` Vlad Harchev 2001-03-11 17:43 ` Sergey Vlasov 2001-03-11 17:51 ` Sergey Vlasov 2001-03-11 18:53 ` Alexander Bokovoy 2001-03-11 19:21 ` Sergey Vlasov 2001-03-11 19:28 ` Alexander Bokovoy [this message] 2001-03-11 20:08 ` Sergey Vlasov 2001-03-11 21:37 ` Alexander Bokovoy 2001-03-12 17:31 ` Sergey Vlasov 2001-03-13 1:43 ` Aleksey Novodvorsky 2001-03-12 17:48 ` Sergey Vlasov 2001-03-12 2:56 ` aen 2001-03-11 18:58 ` Alexander Bokovoy 2001-03-12 3:45 ` aen 2001-03-11 19:53 ` Alexander Bokovoy 2001-03-12 4:07 ` aen 2001-03-11 21:38 ` Alexander Bokovoy 2001-03-12 5:46 ` aen 2001-03-11 21:59 ` Alexander Bokovoy 2001-03-12 15:34 ` Vlad Harchev 2001-03-13 0:25 ` Aleksey Novodvorsky 2001-03-12 18:52 ` Vlad Harchev 2001-03-13 4:12 ` [sisyphus] gtk+-1.2.9 Sergey S. Skulachenko 2001-03-13 7:59 ` Vlad Harchev 2001-03-13 8:44 ` Alexander Bokovoy 2001-03-13 17:31 ` Aleksey Novodvorsky 2001-03-13 15:56 ` Vlad Harchev 2001-03-13 16:22 ` Vlad Harchev 2001-03-14 2:03 ` Aleksey Novodvorsky 2001-03-13 18:58 ` Vlad Harchev 2001-03-14 3:51 ` Aleksey Novodvorsky 2001-03-13 19:58 ` Vlad Harchev 2001-03-13 20:38 ` Alexander Bokovoy 2001-03-13 20:33 ` Sergey Vlasov 2001-03-14 16:53 ` Sergey Vlasov 2001-03-14 1:12 ` Aleksey Novodvorsky 2001-03-13 17:11 ` [devel] Re: [sisyphus] I gtk+-1.2.9 Aleksey Novodvorsky 2001-03-13 16:17 ` Vlad Harchev 2001-03-14 1:19 ` Aleksey Novodvorsky 2001-03-13 18:32 ` Vlad Harchev
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20010311212849.I1408@avilink.net \ --to=ab@avilink.net \ --cc=sisyphus@linuxteam.iplabs.ru \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
ALT Linux Sisyphus discussions This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/sisyphus/0 sisyphus/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 sisyphus sisyphus/ http://lore.altlinux.org/sisyphus \ sisyphus@altlinux.ru sisyphus@altlinux.org sisyphus@lists.altlinux.org sisyphus@lists.altlinux.ru sisyphus@lists.altlinux.com sisyphus@linuxteam.iplabs.ru sisyphus@list.linux-os.ru public-inbox-index sisyphus Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.sisyphus AGPL code for this site: git clone https://public-inbox.org/public-inbox.git