On 18.06.2024 23:01, Adrien Nader wrote:

Hi Adrien,

I've straced the build and the file seems generated and I see some
interesting things. I've heavily edited the output because the original
is already 11M.

The file is created and written to but it's in
"/build/therion-oW9QKw/therion-6.2.1/build/thbook" rather than
"/tmp/mt646779.tmp" where mktexpk expects it to be.

I rather compared the logs from a working [1] and a not working build
[2] The working build says:

kpathsea: Running mktexpk --mfmode / --bdpi 600 --mag 1+0/600 --dpi 600
logo10
mkdir: cannot create directory ‘././sbuild-nonexistent’: Permission denied
mktexpk: Running mf-nowin -progname=mf \mode:=ljfour; mag:=1+0/600;
nonstopmode; input logo10
This is METAFONT, Version 2.71828182 (TeX Live 2023/Debian) (preloaded
base=mf)

(/usr/share/texlive/texmf-dist/fonts/source/public/knuth-lib/logo10.mf
(/usr/share/texlive/texmf-dist/fonts/source/public/knuth-lib/logo.mf
[77] [69] [84] [65] [70] [80] [83] [79] [78]) )
Font metrics written on logo10.tfm.
Output written on logo10.600gf (9 characters, 1748 bytes).
Transcript written on logo10.log.
mktexpk: /tmp/texfonts/pk/ljfour/public/knuth-lib/logo10.600pk:
successfully generated.
 )
(see the transcript file for additional information)
</tmp/texfonts/pk/ljfour/public/knuth-lib/logo10.600pk>

...so all generated files go to /tmp.

kpathsea: Running mktexpk --mfmode / --bdpi 600 --mag 1+0/600 --dpi 600
logo10
mktexpk: Running mf-nowin -progname=mf \mode:=ljfour;
mag:=1+0/600;nonstopmode; input logo10
This is METAFONT, Version 2.71828182 (TeX Live
2025/dev/Debian)(preloaded base=mf)

(/usr/share/texlive/texmf-dist/fonts/source/public/knuth-lib/logo10.mf
(/usr/share/texlive/texmf-dist/fonts/source/public/knuth-lib/logo.mf
[77] [69] [84] [65] [70] [80] [83] [79] [78]) )
Font metrics written on /<<PKGBUILDDIR>>/build/thbook/logo10.tfm.
Output written on /<<PKGBUILDDIR>>/build/thbook/logo10.600gf (9
characters, 1748 bytes).
Transcript written on /<<PKGBUILDDIR>>/build/thbook/logo1
0.log.

The statement --output-dir= (which is handed over to the pdftex command
by the CMakeLists.txt) is regarded and the generated files are put anywhere.

Note that while running the commands directly myself, it seems I managed
to generate the file in an expected location and I was getting an error
about logo10.720gf rather than .600gf.

Well, this is probably due to no submitting the correct parameters to
mktexpk. In my test package the command is

Running mktexpk --mfmode / --bdpi 600 --mag 1+120/600 --dpi 720 logo10

in the end logo10.720pk is generated

hille@rasppi2:~/tmp-1.0 $ pdffonts thbook.pdf
name                                 type              encoding
emb sub uni object ID
------------------------------------ ----------------- ----------------
--- --- --- ---------
[none]                               Type 3            Custom
yes no  no       4  0
SDXKYB+CMR10                         Type 1            Builtin
yes yes no       5  0

...and probably used. This is only a simple test file having the Logo10
as only Type3 font.

Several environment variables refer to the first directory: KPSE_DOT,
TEXINPUTS, OLDPWD, TEXMF_OUTPUT_DIRECTORY.
For TEXMF_OUTPUT_DIRECTORY, I've found the following: 
https://tug.org/pipermail/tex-live-commits/2024-February/028329.html

The commit mostly contains version updates, it is probably not relevant,
but the NEWS message is interesting. I'm wondering at all, why the
therion package cares about the output path of the pdftex engine.

I'll stop there as now I'm definitely out of time for today.

I'll stop here too, maybe simply removing the --output-dir statement
from the CMakeLists.txt solves the issue. I'll test ASAP. If yes, we
don't look at a general issue, which needs to be solved on TL side.

Hilmar

[1]
https://buildd.debian.org/status/fetch.php?pkg=therion&arch=all&ver=6.2.1-1&stamp=1710963335&raw=1
[2]
https://buildd.debian.org/status/fetch.php?pkg=therion&arch=amd64&ver=6.2.1-1%2Bb1&stamp=1717847632&raw=1
--
sigfault

Reply via email to