I tried to compile with latex (pdflatex) some beamer presentations and I get
pdflatex astrosiesta0411.tex
warning: kpathsea: configuration file texmf.cnf not found in these directories: /usr/share/texmf/web2c.
This is pdfTeX, Version 3.1415926-1.40.10 (TeX Live 2009/openSUSE)
I am not a latex expert, but in yast I noticed that suse 11.3 is now installing texlive (I have also the texlive-bin bin-latex latex and latex-doc installed) while my old 9.2 where everything worked had tetex.
I found that there is no directory web2c in /usr/share/texmf, but there is one in /usr/lib/texmf/.
I also found that /usr/share/texmf/README says:
And yet another: texmf-dist should be distribution-independent, so that,
in theory, it could be used by distributions other than TeX Live. So,
no web2c/kpathsea-specific files.
… is this a bug in the suse 11.3 installation ?
… can I just link web2c from /usr/lib to /usr/share ?
… is there a safer procedure ?
Nothing left in the system (/ /usr) from a previous release, suse 11.3 was installed everything afresh on a new machine.
I have in my home a ~/texmf which contains pgf xkeyval beamer datetime lhelp xcolor, but how can that cause the problem above ? That is due to web2c being looked up in the wrong place (/usr/lib instead of /usr/share).
I found that defining setenv TEXMFCNF /usr/lib/texmf/web2c gets rid of the error (there are however other PGF error which did not occur before). I am not such a latex expert to be able to tell it is a workaround or the correct solution.
I also confirm that a plain latex report.tex on a different tex file, not using beamer, gives the same sort of error
warning: kpathsea: configuration file texmf.cnf not found in these directories: /usr/share/texmf/web2c.
I also confirm that doing a setenv TEXMFCNF /usr/lib/texmf/web2c compiles the report (into a dvi) and that a subsequent
dvips report.dvi failes again not finding a file dvips: ! Couldn’t find header file tex.pro.
. The file exists in /usr/lib/texmf/dvips/base/tex.pro, while in the old system it was in /usr/share.
So it looks like the installation of 11.3 mixed up /usr/lib and /usr/share
the first one is set by a .cshrc of my user group, but I am not aware that the other two are set by my cshrc, nor by the group one or the institute one, so I assumed they are a system setup. Changing the middle one (as said above) improves things somehow. I did not dare change the third.
What is the result of printenv | grep TEX (or the list of all relevant environment variables) on your system where everything works as it should ?
There are some commented out definitions in “/etc/profile” and “/etc/csh.login”. But since they are commented out, they should not be a problem. I would guess that those environment settings are involved in your problem.
I found that TEXMFCNF TEXMFMAIN were set to /usr/share/… by /etc/csh.cshrc.local.
In fact resetting both of them manually to /usr/lib/… did solve *most *of my problems, but I did not know whether it was the correct way.
Unsetting them (not TEXINPUTS, which contains journal style stuff) does the same.
So it looks like it is not strictly a suse problem, but mainly a change from tetex (suse 9.2) to texlive (suse 11.3) concerning the location of some texmf file (/usr/share -> /usr/lib) which makes the old /etc/csh.cshrc.local ineffective (and actually harmful).
I am left with some additional problems with beamer/pgf (incompatibility with texlive ?) but I will post them on latex forums, not here.
Thanks to everybody.
I’m pretty sure that csh.cshrc.local is a locally provided file. That is to say, it is not part of the distro. The supplied “csh.cshrc” will source that file if it is found.
Never said anything contrary to it. Actually I said it is not strictly a suse problem !! The environment setting was provided in such file during our institute-wide installation, because it was required in earlier versions. At some time the distro changed from tetex to texlive and/or tex mixed stuff between /usr/lib and /usr/share, and made such environment setting harmful. The point is that it is not obvious to be aware of all such changes until one stumbles into them.
On 2011-02-24 13:36, nrickert wrote:
>
> I’m pretty sure that csh.cshrc.local is a locally provided file. That
> is to say, it is not part of the distro. The supplied “csh.cshrc” will
> source that file if it is found.
That is correct.
The *.local file remains across updates, the other one is replaced.
–
Cheers / Saludos,
Carlos E. R.
(from 11.2 x86_64 “Emerald” at Telcontar)