[tex-live] texlive2008 install-tl fails on Windows XP Chinese traditional
Siep Kroonenberg
siepo at cybercomm.nl
Sun Oct 26 11:04:03 CET 2008
On Sun, Oct 26, 2008 at 02:57:56AM +0200, Reinhard Kotucha wrote:
> Nien-Po Chen writes:
> > To whom it may concern,
> >
> > I cannot find any other e-mail addresses to report this problem, so I
> > send it to you. I wold like to install TeXLive 2008 to Windows XP
> > (Chinese traditional). The installer stops, as shown in the attached
> > screen shots. It seems the installer cannot handle the folder names
> > (in traditional Chinese) properly and fails in mkdir. Any
> > suggestion? Thanks.
>
> Hi,
> another Chinese reported a similar problem with TeX Live 2007 which
> had a completely different installer. In order to avoid the problem
> in TeX Live 2008, I sent him a program which converted an environment
> variable containing a path into a list of bytes in hexadecimal
> notation and asked him to send me the result back.
>
> But the result was discouraging. I had not been able to find out
> which character encoding had been used. The string contained a path
> where one directory contained his name, a single Chinese character.
> This character was represented by two bytes while the rest of the
> string ("C:\Documents and Settings\...") had been single-byte ASCII
> characters.
>
> The problem is that Perl expects forward slashes as directory
> separators. Thus, if a path is entered in one of the menus or it's
> taken from an environment variable, backslashes have to be converted
> to forward slashes. The only character encoding I'm aware of which
> allows such a conversion without breaking multi-byte characters is
> UTF-8.
>
> About a year ago I discussed this issue with Hans Hagen. He assumed
> that, though Windows probably uses UTF-8 for file names internally,
> the user interfaces are using character encodings based on national
> standards. This explains the result of our test. He suggested to
> convert file names to short names (Siep mentioned it already too).
> Then a path containing East Asian characters will be converted to a
> string containing ASCII characters only. However, this is not always
> possible because some programs have to determine how they had been
> invoked. In this case short names are not usable.
>
> I'm sad that I can't provide better news. I even don't know whether
> this problem can be solved at all. Maybe a Perl/Windows expert from
> East Asia could provide more information.
>
> At the moment, all I can recommend is to install TeX Live in a
> directory which doesn't contain multi-byte (East Asian) characters in
> its path. It's definitely not a solution because on Vista you'll
> certainly are not allowed to install TeX Live in a directory of your
> choice.
According to the screenshot, this is about creating a directory for
shortcuts, a sub-subdirectory of c:/Documents and Settings/All Users:
...
running post install action for bin-texdoc
TK::Error: Can't mkdir 'C:/Documents and Settings/All Users/####/####/':
Invalid argument.
TeXLive::TLUtils::mkdirhier at tlpkg/TeXLive/TLUtils.pm line 507
TeXLive::TLWinGoo::add_menu_shortcut at tlpkg/TeXLive/TLWinGoo.pm line 897
TeXLive::TLPostActions::do_install_bin_texdoc at
tlpkg/TeXLive/TLPostActions.pm line 164
Your comment on problems with slash flipping may be on the mark: the
shortcuts should be created in C:/Documents and Settings/All
Users/Start Menu/Programs/TeX Live 2008, i.e. _one level deeper_,
whereas Start Menu/Programs should already exist.
_If_ it is true that short names only contain ascii characters, then
that would be a solution, at least in this case.
--
Siep Kroonenberg
More information about the tex-live
mailing list