Opened 14 years ago

Closed 13 years ago

#25460 closed defect (fixed)

texlive-bin installs files that aren't usable without other ports

Reported by: akimd (Akim Demaille) Owned by: drkp (Dan Ports)
Priority: Normal Milestone:
Component: ports Version: 1.9.1
Keywords: Cc:
Port: texlive-bin

Description

Hi,

When upgrading texlive, there was still tex4ht on my machine, so I trusted it was working properly. Unfortunately it behaves very badly:

$ htlatex simple.tex
This is pdfTeX, Version 3.1415926-1.40.10 (TeX Live/MacPorts 2009_2)
entering extended mode
LaTeX2e <2009/09/24>
Babel <v3.8l> and hyphenation patterns for english, usenglishmax, dumylang, noh
yphenation, czech, slovak, dutch, basque, french, german-x-2009-06-19, ngerman-
x-2009-06-19, german, ngerman, italian, polish, portuguese, spanish, catalan, g
alician, ukenglish, loaded.
(./simple.tex (/opt/local/share/texmf-texlive-dist/tex/latex/base/article.cls
Document Class: article 2007/10/19 v1.4h Standard LaTeX document class
(/opt/local/share/texmf-texlive-dist/tex/latex/base/size10.clo))
(/opt/local/share/texmf/tex/generic/tex4ht/tex4ht.sty)
(/opt/local/share/texmf/tex/generic/tex4ht/tex4ht.4ht
::::::::::::::::::::::::::::::::::::::::::
 TeX4ht info is available in the log file 
::::::::::::::::::::::::::::::::::::::::::
) (/opt/local/share/texmf/tex/generic/tex4ht/tex4ht.sty
--- needs --- tex4ht simple ---
(./simple.tmp) (./simple.xref)
(/opt/local/share/texmf/tex/generic/tex4ht/html4.4ht)
(/opt/local/share/texmf/tex/generic/tex4ht/html4-math.4ht)
(/opt/local/share/texmf/tex/generic/tex4ht/html4.4ht)
(/opt/local/share/texmf/tex/generic/tex4ht/html4-math.4ht)
(/opt/local/share/texmf/tex/generic/tex4ht/html4.4ht)
(/opt/local/share/texmf/tex/generic/tex4ht/html4-math.4ht)
(/opt/local/share/texmf/tex/generic/tex4ht/latex.4ht
(/opt/local/share/texmf/tex/generic/tex4ht/html4.4ht)
(/opt/local/share/texmf/tex/generic/tex4ht/html4-math.4ht))
(/opt/local/share/texmf/tex/generic/tex4ht/fontmath.4ht
(/opt/local/share/texmf/tex/generic/tex4ht/html4.4ht)
(/opt/local/share/texmf/tex/generic/tex4ht/html4-math.4ht))
(/opt/local/share/texmf/tex/generic/tex4ht/article.4ht
(/opt/local/share/texmf/tex/generic/tex4ht/html4.4ht)
(/opt/local/share/texmf/tex/generic/tex4ht/html4-math.4ht))
(/opt/local/share/texmf/tex/generic/tex4ht/html4.4ht)
(/opt/local/share/texmf/tex/generic/tex4ht/html4-math.4ht)) (./simple.aux)
[1] (./simple.aux) )
Output written on simple.dvi (1 page, 9508 bytes).
Transcript written on simple.log.
This is pdfTeX, Version 3.1415926-1.40.10 (TeX Live/MacPorts 2009_2)
entering extended mode
LaTeX2e <2009/09/24>
Babel <v3.8l> and hyphenation patterns for english, usenglishmax, dumylang, noh
yphenation, czech, slovak, dutch, basque, french, german-x-2009-06-19, ngerman-
x-2009-06-19, german, ngerman, italian, polish, portuguese, spanish, catalan, g
alician, ukenglish, loaded.
(./simple.tex (/opt/local/share/texmf-texlive-dist/tex/latex/base/article.cls
Document Class: article 2007/10/19 v1.4h Standard LaTeX document class
(/opt/local/share/texmf-texlive-dist/tex/latex/base/size10.clo))
(/opt/local/share/texmf/tex/generic/tex4ht/tex4ht.sty)
(/opt/local/share/texmf/tex/generic/tex4ht/tex4ht.4ht
::::::::::::::::::::::::::::::::::::::::::
 TeX4ht info is available in the log file 
::::::::::::::::::::::::::::::::::::::::::
) (/opt/local/share/texmf/tex/generic/tex4ht/tex4ht.sty
--- needs --- tex4ht simple ---
(./simple.tmp) (./simple.xref)
(/opt/local/share/texmf/tex/generic/tex4ht/html4.4ht)
(/opt/local/share/texmf/tex/generic/tex4ht/html4-math.4ht)
(/opt/local/share/texmf/tex/generic/tex4ht/html4.4ht)
(/opt/local/share/texmf/tex/generic/tex4ht/html4-math.4ht)
(/opt/local/share/texmf/tex/generic/tex4ht/html4.4ht)
(/opt/local/share/texmf/tex/generic/tex4ht/html4-math.4ht)
(/opt/local/share/texmf/tex/generic/tex4ht/latex.4ht
(/opt/local/share/texmf/tex/generic/tex4ht/html4.4ht)
(/opt/local/share/texmf/tex/generic/tex4ht/html4-math.4ht))
(/opt/local/share/texmf/tex/generic/tex4ht/fontmath.4ht
(/opt/local/share/texmf/tex/generic/tex4ht/html4.4ht)
(/opt/local/share/texmf/tex/generic/tex4ht/html4-math.4ht))
(/opt/local/share/texmf/tex/generic/tex4ht/article.4ht
(/opt/local/share/texmf/tex/generic/tex4ht/html4.4ht)
(/opt/local/share/texmf/tex/generic/tex4ht/html4-math.4ht))
(/opt/local/share/texmf/tex/generic/tex4ht/html4.4ht)
(/opt/local/share/texmf/tex/generic/tex4ht/html4-math.4ht)) (./simple.aux)
[1] (./simple.aux) )
Output written on simple.dvi (1 page, 9508 bytes).
Transcript written on simple.log.
This is pdfTeX, Version 3.1415926-1.40.10 (TeX Live/MacPorts 2009_2)
entering extended mode
LaTeX2e <2009/09/24>
Babel <v3.8l> and hyphenation patterns for english, usenglishmax, dumylang, noh
yphenation, czech, slovak, dutch, basque, french, german-x-2009-06-19, ngerman-
x-2009-06-19, german, ngerman, italian, polish, portuguese, spanish, catalan, g
alician, ukenglish, loaded.
(./simple.tex (/opt/local/share/texmf-texlive-dist/tex/latex/base/article.cls
Document Class: article 2007/10/19 v1.4h Standard LaTeX document class
(/opt/local/share/texmf-texlive-dist/tex/latex/base/size10.clo))
(/opt/local/share/texmf/tex/generic/tex4ht/tex4ht.sty)
(/opt/local/share/texmf/tex/generic/tex4ht/tex4ht.4ht
::::::::::::::::::::::::::::::::::::::::::
 TeX4ht info is available in the log file 
::::::::::::::::::::::::::::::::::::::::::
) (/opt/local/share/texmf/tex/generic/tex4ht/tex4ht.sty
--- needs --- tex4ht simple ---
(./simple.tmp) (./simple.xref)
(/opt/local/share/texmf/tex/generic/tex4ht/html4.4ht)
(/opt/local/share/texmf/tex/generic/tex4ht/html4-math.4ht)
(/opt/local/share/texmf/tex/generic/tex4ht/html4.4ht)
(/opt/local/share/texmf/tex/generic/tex4ht/html4-math.4ht)
(/opt/local/share/texmf/tex/generic/tex4ht/html4.4ht)
(/opt/local/share/texmf/tex/generic/tex4ht/html4-math.4ht)
(/opt/local/share/texmf/tex/generic/tex4ht/latex.4ht
(/opt/local/share/texmf/tex/generic/tex4ht/html4.4ht)
(/opt/local/share/texmf/tex/generic/tex4ht/html4-math.4ht))
(/opt/local/share/texmf/tex/generic/tex4ht/fontmath.4ht
(/opt/local/share/texmf/tex/generic/tex4ht/html4.4ht)
(/opt/local/share/texmf/tex/generic/tex4ht/html4-math.4ht))
(/opt/local/share/texmf/tex/generic/tex4ht/article.4ht
(/opt/local/share/texmf/tex/generic/tex4ht/html4.4ht)
(/opt/local/share/texmf/tex/generic/tex4ht/html4-math.4ht))
(/opt/local/share/texmf/tex/generic/tex4ht/html4.4ht)
(/opt/local/share/texmf/tex/generic/tex4ht/html4-math.4ht)) (./simple.aux)
[1] (./simple.aux) )
Output written on simple.dvi (1 page, 9508 bytes).
Transcript written on simple.log.
----------------------------
tex4ht.c (2007-04-21-21:07 kpathsea)
tex4ht -f/simple.tex 
  -i~/tex4ht.dir/texmf/tex4ht/ht-fonts/ 
--- warning --- Can't find/open file `tex4ht.env | .tex4ht'
/opt/local/bin/htlatex: line 5: 59406 Bus error               tex4ht -f/$1 -i~/tex4ht.dir/texmf/tex4ht/ht-fonts/$3
----------------------------
t4ht.c (2007-01-05-03:17 kpathsea)
t4ht -f/simple.tex 
--- warning --- Can't find/open file `tex4ht.env | .tex4ht'
--- warning --- Can't find/open file `simple.lg'

With this simple input:

$ cat /tmp/simple.tex
\documentclass{article}

\begin{document}
Hello world.
\end{document}

Looking for information on the trac, I found that there is another package to install with a suggestive name: texlive-htmlxml. Yet:

  • either make it work completely from the start, or make it fail completely! tex4ht should not be partially installed
  • it is not clear enough (well, to my reading, most probably incomplete) that tex4ht lives in texlive-htmlxml.

Thanks for the good work!

Change History (6)

comment:1 Changed 14 years ago by drkp (Dan Ports)

Owner: changed from macports-tickets@… to dports@…
Port: texlive added; texliveh removed
Status: newassigned

Just to be clear, does it work OK with texlive-htmlxml installed?

comment:2 in reply to:  1 Changed 14 years ago by akimd (Akim Demaille)

Replying to dports@…:

Just to be clear, does it work OK with texlive-htmlxml installed?

Yes, it works perfectly.

comment:3 Changed 14 years ago by drkp (Dan Ports)

Port: texlive-bin added; texlive removed
Summary: texlive: tex4ht is broken by defaulttexlive-bin installs files that aren't usable without other ports

Really the problem here is that all the binaries are built as part of texlive-bin, even though most of them are not usable without the associated texmf files in another port. (texlive is designed for binary installations). A couple other examples include context and luatex, which you'll need texlive-context and texlive-luatex for respectively. And basically everything requires texlive-basic.

I agree that it's confusing to have these binaries installed when they don't work. I don't know how to deal with it, though. It would be great if we only built the parts of texlive-bin that we wanted but this would require some pretty major hacking of the upstream distribution.

We could maybe install the binaries in some other location instead of $prefix/bin and only link them in once the necessary support files are installed. A bit ugly.

A related problem is that texlive-bin installs some broken symlinks in $prefix/bin to files that get installed in $prefix/share/texmf-texlive-dist/scripts by other ports. This is probably easier to fix, but gives a less confusing error.

comment:4 Changed 14 years ago by akimd (Akim Demaille)

May you could install the binaries in some hidden place, say libexec, and have in bin/ shell script that wrap call to the real binaries. It would first check that the required port (or simply the required file) is there. If so, good, proceed, otherwise, suggest port install texlive-xmlhtml.

comment:5 Changed 14 years ago by akimd (Akim Demaille)

s/May/Maybe/, sorry.

comment:6 Changed 13 years ago by drkp (Dan Ports)

Resolution: fixed
Status: assignedclosed

Fixed in the texlive 2010 update (r73314, see #26430)

Note: See TracTickets for help on using tickets.