[tex-live] TexLive 20070128 doesn't work well under Win32
Vladimir Volovich
vvv at vsu.ru
Fri Feb 2 17:16:53 CET 2007
"DK" == David Kastrup writes:
>> on a case-insensitive filesystems, a search for "ls-R" should
>> always find the file, even if it is named "ls-r", right?
DK> Only if the search is case-insensitive. This will be the case
DK> when an actual attempt is made to open the file, but not
DK> necessarily so when the information about the presence of the
DK> file is derived in some other manner, like listing a directory.
in case of the "ls-R" file, its presence is tested by attempting to
access the file, thus it should work on both case-insensitive and
case-sensitive filesystems if the access is made to "ls-R" (the latter
is created by mktexlsr).
$ strace kpsewhich plain.tex 2>&1 | grep -i ls-r
access("/home/vvv/texmf/ls-R", R_OK) = 0
stat64("/home/vvv/texmf/ls-R", {st_mode=S_IFREG|0644, st_size=9849, ...}) = 0
access("/home/vvv/texmf/ls-r", R_OK) = -1 ENOENT (No such file or directory)
access("/var/lib/texmf/ls-R", R_OK) = 0
stat64("/var/lib/texmf/ls-R", {st_mode=S_IFREG|0644, st_size=776, ...}) = 0
access("/var/lib/texmf/ls-r", R_OK) = -1 ENOENT (No such file or directory)
access("/usr/share/texmf/ls-R", R_OK) = 0
stat64("/usr/share/texmf/ls-R", {st_mode=S_IFREG|0644, st_size=24758, ...}) = 0
access("/usr/share/texmf/ls-r", R_OK) = -1 ENOENT (No such file or directory)
access("/usr/share/texmf-texlive/ls-R", R_OK) = 0
stat64("/usr/share/texmf-texlive/ls-R", {st_mode=S_IFREG|0644, st_size=321347, ...}) = 0
access("/usr/share/texmf-texlive/ls-r", R_OK) = -1 ENOENT (No such file or directory)
open("/home/vvv/texmf/ls-R", O_RDONLY) = 3
read(3, "% ls-R -- filename database for "..., 8192) = 8192
open("/var/lib/texmf/ls-R", O_RDONLY) = 3
read(3, "% ls-R -- filename database for "..., 8192) = 776
open("/usr/share/texmf/ls-R", O_RDONLY) = 3
read(3, "% ls-R -- filename database for "..., 8192) = 8192
open("/usr/share/texmf-texlive/ls-R", O_RDONLY) = 3
read(3, "% ls-R -- filename database for "..., 8192) = 8192
i see that even on unix systems it wastes time trying to look for
"ls-r" which doesn't make sense.
what should happen is it should look only for "ls-R" on all platforms,
and "mktexlsr" should always create "ls-R" (and remove "ls-[Rr]"
before that).
Best,
v.
More information about the tex-live
mailing list