Closed yarikoptic closed 1 year ago
reproduced by CI now in https://github.com/con/opfvta-replication-2023/actions/runs/5555909136/jobs/10147702340
I'll try making it with allowed extensions
make: *** No rule to make target 'data/topology.tex'. Stop.
------------
Running 'make "data/topology.jpg"'
------------
make: *** No rule to make target 'data/topology.jpg'. Stop.
------------
Running 'make "data/topology.pdf"'
------------
pushd data; dot -Tpdf topology.dot -o topology.pdf 2> topology.log
/data/data /data
I think this is an issue with the container generation.
make article
works here, but make container-article
fails.
The errors you're getting aren't from make
but from latexmk
, and most of them don't matter.
Running 'make "data/topology.tex"'
------------
make: *** No rule to make target 'data/topology.tex'. Stop.
------------
Running 'make "data/topology.png"'
------------
make: *** No rule to make target 'data/topology.png'. Stop.
------------
Running 'make "data/topology.jpg"'
------------
make: *** No rule to make target 'data/topology.jpg'. Stop.
------------
Running 'make "data/topology.pdf"'
What's happening here is that latexmk sees https://github.com/con/opfvta-replication-2023/blob/6259ad99e36fa7c3d9e0c4df426244d07dcd6797/paper/source/results.tex#L15 , finds no file, and tries all available formats.
None of these errors are fatal, and the ones which end with Stop
aren't even relevant.
The one that is relevant is the one that fails:
pushd data; dot -Tpdf topology.dot -o topology.pdf 2> topology.log
/data/data /data
make: *** [data/topology.pdf] Error 127
Makefile:46: recipe for target 'data/topology.pdf' failed
Because here we have a target but it's not working. Need to figure out why.
@asmacdo @yarikoptic do you know what Debian package name will provide the dot
executable from graphviz? I looked it up initially, and I'm pretty sure it's supposed to be graphviz
(it's also graphviz
in Gentoo), but I think our container ends up not covering that dependency:
[deco]~/docsrc/opfvta-replication-2023/paper/source ❱ stat data/topology.log
stat: cannot statx 'data/topology.log': No such file or directory
[deco]~/docsrc/opfvta-replication-2023/paper/source ❱ make container-article > /dev/null
WARN[0000] Found incomplete layer "3a1c59bbe1f81db291dac1dde46816170da3504f44f1870c912a4096e7032929", deleting it
Latexmk: This is Latexmk, John Collins, 1 January 2015, version: 4.41.
------------
Running 'make "data/topology.jpg"'
------------
make: *** No rule to make target 'data/topology.jpg'. Stop.
------------
Running 'make "data/topology.pdf"'
------------
make: *** [data/topology.pdf] Error 127
------------
Running 'make "data/topology.png"'
------------
make: *** No rule to make target 'data/topology.png'. Stop.
------------
Running 'make "data/topology.tex"'
------------
make: *** No rule to make target 'data/topology.tex'. Stop.
[deco]~/docsrc/opfvta-replication-2023/paper/source ❱ cat data/topology.log
/bin/bash: dot: command not found
[deco]~/docsrc/opfvta-replication-2023/paper/source ❱ cat ../../code/images/Containerfile.latex
FROM blang/latex:ubuntu
RUN apt-get update
RUN apt-get install biber -y
RUN apt-get install graphviz -y
In any case, that's our error. Everything else is latexmk
trying out different fallbacks.
it is graphviz: https://packages.debian.org/search?searchon=contents&keywords=%2Fusr%2Fbin%2Fdot&mode=path&suite=stable&arch=any
not sure about complaint that dot not found - but errors above seems due to missing Makefile rules to compile those types.
to troubleshoot/resolve next time please just try to reproduce/understand what the issue is by e.g.
to see that dot
is installed just fine and that it means that problem is different... try running using that image:
❯ podman run --rm -it --net=none -v "$PWD":/data:Z --user="$(id -u):$(id -g)" docker.io/asmacdo/latex-biber:0.0.0-alpha
bash: /data/.bashrc: Permission denied
47521@51c1afb72380:~$ which -a dot
47521@51c1afb72380:~$ apt-cache policy graphviz
graphviz:
Installed: (none)
Candidate: 2.38.0-12ubuntu2.1
Version table:
2.38.0-12ubuntu2.1 500
500 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 Packages
2.38.0-12ubuntu2 500
500 http://archive.ubuntu.com/ubuntu xenial/main amd64 Packages
47521@51c1afb72380:~$
so the image which @asmacdo shared has no graphviz installed - how come?
but errors above seems due to missing Makefile rules to compile those types.
Yep, as I was saying, it's auto-generated make commands by latexmk
, it sees the \includegraphics
command, and tries to go through all conceivable extensions and find something to make. As long as one of them works, it's fine. The issue is purely that dot is not found.
solved as part of the 2023-07-17 paperthon