In the kpathsea library configuration file in
/usr/share/texmf/web2c/texmf.cnf, the value for VARTEXFONTS
is initialised using the $SELFAUTOPARENT variable, which is
in turn initialised using the location of the _executable_
which is compiled against the library.
This works OK for executables which are installed in
/usr/bin, since their SELFAUTOPARENT is / (this includes all
of the dviware which the tetex component installs), but it
means that applications which use the kpathsea library but
are _not_ installed here, fail, because they cannot find the
cache of generated fonts. In other words, the file is such
that two applications using the same library and the same
configuration file can behave differently depending on their
I mentioned this on the tex-k mailing list, and the
current web2c maintainer Olaf Weber agreed that this
configuration was broken.
Fix: set `VARTEXFONTS = /var/lib/texmf'. Since
SELFAUTOPARENT will resolve to / for the current
installation, this change would not break current
installations. There is no problem with the dependence of
TEXMFMAIN on SELFAUTODIR -- that is what the variable is
User/sysadmin workarounds: (1) make this change (safe for
the reason mentioned above); (2) install all new executables
linked against the library in /usr/bin (may be undesirable
for assorted reasons); (3) hack source code to get it to lie
about its location (this is what I've done because I've been
writing the application, but this is rather ugly, and
obviously doesn't help everyone).
By the way, the RH teTeX distribution seems to be one of the
few which actually installs the kpathsea library and include
files. This is a Good Thing -- thanks, and can I encourage
you to keep doing that....
All the best,
The file /usr/share/texmf/web2c/texmf.cnf already has
VARTEXFONTS = /var/lib/texmf
in the Red Hat 6.1 tetex-1.0.6-7 package.
*** Bug 5249 has been marked as a duplicate of this bug. ***