On May 9, 2014, at 19:42, Jerry wrote:

> Thanks, Ryan. Light testing of Octave indicates that it is currently working. 
> However, at least some of the dependencies indicated in the list above 
> ("Error: The following dependencies were not installed:...") are in fact not 
> installed--but some are. For some reason Octave needs texlive and it is not 
> installed. Some parts of texlive e.g. texlive-bin are installed but others 
> are not. Obviously I can install texlive separately but I'm wondering if 
> something went wrong.
> 
> Do you think something went wrong, i.e, will I find some of these 
> dependencies missing later? Do you think your recipe above (install Octave 
> without +docs, then with +docs) will fix any problems?

You've got the port installed with the +docs variant as you wanted, so no 
further action is needed on your part; my message was mainly for the archives 
for anyone else encountering the problem later.

Probably, a bin:-style dependency is declared incorrectly in some port. It 
might be doxygen.

doxygen is an indirect dependency of octave +docs, and doxygen itself also has 
a +docs variant. When you request a variant, that variant request gets passed 
on to all the dependencies that have not yet been installed. So MacPorts tried 
to install doxygen with the +docs variant as well.

doxygen's +docs variant has an incorrect bin:-style dependency on 
"bin:pdflatex:texlive"; I filed https://trac.macports.org/ticket/43669 for that.

The dependency "bin:pdflatex:texlive" means: if there is not a binary 
"pdflatex" in the path, install the port "texlive". The implication is that the 
port "texlive" will provide the binary "pdflatex", but that's not the case; 
"pdflatex" is actually provided by texlive-latex. texlive depends on 
texlive-latex, but it also depends on a lot of other ports that don't relate to 
latex.

So in your case, MacPorts saw the "bin:pdflatex:texlive" dependency of the 
doxygen port's +docs variant, saw that the binary "pdflatex" didn't exist, and 
began installing texlive's dependencies, most of which weren't actually needed, 
and one of which introduces a circular dependency back to doxygen which makes 
MacPorts unable to proceed.

If you were to install texlive-latex, either manually or as a dependency of 
something else, and then try again to install octave +docs, it would work, 
because now the dependency "bin:pdflatex:texlive" is satisfied by the existence 
of the pdflatex binary that the texlive-latex port installed. Alternately, 
first installing doxygen without the +docs variant would work too.

pdfjam has a similar dependency error; I filed 
https://trac.macports.org/ticket/43668 for that.

latex-mk had a similar problem; it is openmaintainer so I fixed it in 
https://trac.macports.org/changeset/119933 .


_______________________________________________
macports-users mailing list
[email protected]
https://lists.macosforge.org/mailman/listinfo/macports-users

Reply via email to