[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Bug#356476: texinfo - fails to install



Hi Bastian,

after an analysis of what we know, there are some requests for you at
the end.

Norbert Preining <preining@logic.at> wrote:

> So kpsewhich --version succeeds, but kpsewhich -var-value TEXMFSYSVAR
> does not. This would be really strange.

Yes, sorry, I didn't notice this.  

So we know that libkpathsea is configured, and tetex-bin or the
respective texlive package is installed (we have a working kpsewhich
binary).  

Since this was on an autobuilder, kpsewhich should be from tetex-bin,
not texlive.  However, tetex-bin depends on tetex-base, and therefore
the strace looks as if some lines are missing:

| execve("/usr/bin/kpsewhich", ["kpsewhich", "-var-value", "TEXMFSYSVAR"], [/* 26 vars */]) = 0
| [...]
| access("/usr/share/texmf/aliases", R_OK) = -1 ENOENT (No such file or directory)
| fstat64(1, {st_mode=S_IFIFO|0600, st_size=0, ...}) = 0
| mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x77fe6000
| write(1, "\n", 1)                       = 1
| munmap(0x77fe6000, 4096)                = 0
| exit_group(1)          

What I get here is:

,----
| execve("/usr/bin/kpsewhich", ["kpsewhich", "-var-value", "TEXMFSYSVAR"], [/* 35 vars */]) = 0
| [...]
| access("/home/frank/texmf/aliases", R_OK) = -1 ENOENT (No such file or directory)
| access("/var/lib/texmf/aliases", R_OK)  = -1 ENOENT (No such file or directory)
| access("/usr/local/share/texmf/aliases", R_OK) = -1 ENOENT (No such file or directory)
| access("/usr/share/texmf/aliases", R_OK) = -1 ENOENT (No such file or directory)
| access("/var/cache/fonts/aliases", R_OK) = -1 ENOENT (No such file or directory)
| access("/usr/share/texmf-tetex/aliases", R_OK) = 0
| stat64("/usr/share/texmf-tetex/aliases", {st_mode=S_IFREG|0644, st_size=2763, ...}) = 0
| open("/usr/share/texmf-tetex/aliases", O_RDONLY) = 3
| fstat64(3, {st_mode=S_IFREG|0644, st_size=2763, ...}) = 0
| mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7f1d000
| read(3, "% real-filename alias\nblackdvi.t"..., 4096) = 2763
| read(3, "", 4096)                       = 0
| close(3)                                = 0
| munmap(0xb7f1d000, 4096)                = 0
| fstat64(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 0), ...}) = 0
| mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7f1d000
| write(1, "/var/lib/texmf\n", 15)        = 15
| munmap(0xb7f1d000, 4096)                = 0
| exit_group(0)                           = ?
`----

The TEXMF variable is set by tex-common, and the directories
/var/lib/texmf, /var/cache/fonts, and /user/share/texmf-tetex are
installed by tex-common and/or tetex-base.  Therefore I think kpsewhich
should look for an aliases file also in those directories, and it's
strange that it doesn't.  At least /var/lib/texmf should exist and be
listed earlier than /usr/share/texmf.

[Bastian, look here]

Besides that, the strace doesn't give any information why kpsewhich
doesn't seem to know about TEXMFSYSVAR.  There are two things that could
help here.

- set and export KPATHSEA_DEBUG=126 and try again, there'll be a lot of
  output on stderr which we need to analyse

- If you can get /etc/texmf/texmf.cnf and /etc/texmf/texmf.d/* before
  the buildd removes tex-common and other installe packages, the file
  contents would probably help, too.

Regards, Frank
-- 
Frank Küster
Single Molecule Spectroscopy, Protein Folding @ Inst. f. Biochemie, Univ. Zürich
Debian Developer (teTeX)



Reply to: