[tex-live] [luatex] [lltx] Location of recorder file

Philipp Stephani st_philipp at yahoo.de
Sun May 15 11:45:01 CEST 2011


Am 15.05.2011 um 00:36 schrieb Reinhard Kotucha:

> On 2011-05-14 at 02:43:31 +0200, Philipp Stephani wrote:
> 
>> [...] 
>> 
>> The Microsoft Visual C runtime is the current standard C runtime
>> and not at all old or outdated.
> 
> Hi Philipp,
> thank you very much for the comprehensive response.
> 
> I was confused by different behavior of cmd.exe and the Exploder,

What exactly is the different behavior? AFAIK cmd doesn't accept / as a path delimiter (due to historical reasons, of course...), but that's about it. Missing Unicode support is generally caused by the non-Unicode font that is used by default.
There are also a few other differences and issues, e.g. (at least several versions of) the Explorer refuse to create files starting with a dot, even if they are perfectly legal for the kernel.

> and
> I have the sources of MSVCRT from 1998 and a recent version but I
> didn't see significant changes

Probably because most of the system-related functions like spawn*, fopen, etc. simply wrap the Windows API functions whose interface essentially hasn't changed since 1995 (there have been a small number of additions, but if you had good working code in 1995, it will still compile and run just fine, with full Unicode support). Similarly files like execl.c in the glibc [1] don't have to change often; it is rather the underlying operating system function (like execve or CreateProcess) that has to be modified for new releases of the system.
The unfortunate situation on Windows is that you always have to use non-standard function (i.e. functions not defined by the C standard) to get Unicode support. Therefore many applications switch to higher-level abstractions (e.g. Qt, Boost.Filesystem...) that wrap the platform-specific details and can guarantee Unicode support on all platforms.

[1] http://sourceware.org/git/?p=glibc.git;a=blob;f=posix/execl.c


More information about the tex-live mailing list