--- Begin Message ---
Subject: |
texlive-latex-base fails to build: "missing engine: luajithbtex" |
Date: |
Thu, 24 Jun 2021 22:36:26 -0700 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux) |
Hi,
On powerpc64le-linux, using Guix commit
45dd2b4505095d24e253bd62d74474cad135cf3b (the current tip of
core-updates), texlive-latex-base fails to build because the engine
"luajithbtex" is missing:
--8<---------------cut here---------------start------------->8---
Transcript written on pdflatex-dev.log.
fmtutil [INFO]: log file copied to:
/tmp/guix-build-texlive-latex-base-54632.drv-0/source/web2c/pdftex/pdflatex-dev.log
fmtutil [INFO]:
/tmp/guix-build-texlive-latex-base-54632.drv-0/source/web2c/pdftex/pdflatex-dev.fmt
installed.
fmtutil [ERROR]: not building luajithbtex due to missing engine: luajithbtex
fmtutil [INFO]: disabled formats: 40
fmtutil [INFO]: successfully rebuilt formats: 19
fmtutil [INFO]: failed to build: 1 (luajithbtex/luajithbtex)
fmtutil [INFO]: total formats: 60
fmtutil [INFO]: exiting with status 1
error: in phase 'build': uncaught exception:
%exception #<&invoke-error program: "fmtutil-sys" arguments: ("--all"
"--fmtdir=web2c" "--cnffile=web2c/fmtutil.cnf") exit-status: 1 term-signal: #f
stop-signal: #f>
phase `build' failed after 55.3 seconds
command "fmtutil-sys" "--all" "--fmtdir=web2c" "--cnffile=web2c/fmtutil.cnf"
failed with status 1
builder for
`/gnu/store/n3j2vrlm1vb7hy8wf0afy7qv8yd4dcqb-texlive-latex-base-54632.drv'
failed with exit code 1
build of
/gnu/store/n3j2vrlm1vb7hy8wf0afy7qv8yd4dcqb-texlive-latex-base-54632.drv failed
--8<---------------cut here---------------end--------------->8---
Previously, we have disabled luajittex because "LuaJIT is not ported to
powerpc64le* yet":
--8<---------------cut here---------------start------------->8---
commit 1a0f4013d33535ed9b8518cfb3ac502f48132fd8
Author: Leo Le Bouter <lle-bout@zaclys.net>
Date: Mon Feb 8 04:47:03 2021 +0100
gnu: texlive-latex-base: Fix compilation on powerpc64le*.
* gnu/packages/tex.scm (texlive-latex-base)[arguments]: LuaJIT is not
ported to
powerpc64le* yet. Update replacement 'build phase to add "luajittex" within
the
"disabled-formats" list on powerpc64le*.
Signed-off-by: Chris Marusich <cmmarusich@gmail.com>
commit e9938dc8f0e081e4407a96502a04ea63f07e5a8c
Author: Leo Le Bouter <lle-bout@zaclys.net>
Date: Mon Feb 8 03:13:53 2021 +0100
gnu: texlive-bin: Fix compilation on powerpc64le*.
* gnu/packages/tex.scm (texlive-bin)[arguments]: Append
"--disable-luajittex"
and "--disable-mfluajit" to keyword argument "#:configure-flags" on
powerpc64le* because LuaJIT is not ported to powerpc64le* yet. Also set
"#:tests?" to "#f" on powerpc64le*.
Signed-off-by: Chris Marusich <cmmarusich@gmail.com>
--8<---------------cut here---------------end--------------->8---
The attached patch fixes the issue. However, I'm curious about a few
things, so I would welcome any input others might have:
- Is it a problem to disable LuaJIT-related things? Based on what I've
found on the Internet, I think it's fine to disable LuaJIT. It looks
like luatex and luatexhb are preferred in most cases. It seems that
luajittex and luajithbtex alternatives do essentially the same thing
as their luatex and luahbtex counterparts, but they run Lua using
LuaJIT (just-in-time compilation capability) instead of the regular
Lua. In their "Short report on the state of LuaTEX, 2020", Luigi
Scarso wrote that luajittex and luajithbtex "should also be considered
a research tool in digital typesetting" [1]. So I don't think we lose
much by disabling it, especially if it isn't supported on powerpc64le.
- Will LuaJIT ever support the powerpc64le architecture? Until it does,
I guess we can't use LuaJIT on powerpc64le at all, not just for
TeX-related stuff.
- Is it correct to add "mfluajit" to the disabled-formats list, like I
do in my patch? It sounds like "mfluajit" is a related to "metafont",
but I don't yet really understand what that means. Is it an engine
like luajit? Is it correct to include mfluajit in the list of formats
to disable in fmtutil.cnf when running fmtutil-sys? I am totally
unfamiliar with these tools, so I have no idea. Perhaps it makes no
sense to include mfluajit here, even if maybe it is benign to do so.
If any TeX wizards out there can clarify this for me, I'd be happy to
adjust the patch as needed.
Footnotes:
[1] https://www.tug.org/TUGboat/tb41-3/tb129scarso-luatex.pdf
--
Chris
0001-gnu-Disable-more-LuaJIT-components-on-powerpc64le-sy.patch
Description: Text Data
signature.asc
Description: PGP signature
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#49218: texlive-latex-base fails to build: "missing engine: luajithbtex" |
Date: |
Tue, 06 Jul 2021 21:08:30 -0700 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux) |
Hi,
I've committed the patch as 68b0e0d511c2873603636e9f783ff59aac4b7612 on
core-updates. I'm closing this bug report.
Chris Marusich <cmmarusich@gmail.com> writes:
> - Will LuaJIT ever support the powerpc64le architecture? Until it does,
> I guess we can't use LuaJIT on powerpc64le at all, not just for
> TeX-related stuff.
See: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=49220
In short, it does not seem like upstream support for powerpc64le is
forthcoming in the near future. But maybe that will change with time.
> - Is it correct to add "mfluajit" to the disabled-formats list, like I
> do in my patch? It sounds like "mfluajit" is a related to "metafont",
> but I don't yet really understand what that means. Is it an engine
> like luajit? Is it correct to include mfluajit in the list of formats
> to disable in fmtutil.cnf when running fmtutil-sys? I am totally
> unfamiliar with these tools, so I have no idea. Perhaps it makes no
> sense to include mfluajit here, even if maybe it is benign to do so.
> If any TeX wizards out there can clarify this for me, I'd be happy to
> adjust the patch as needed.
FYI, I found this information about formats and engines:
https://www.tug.org/levels.html
According to that document, "engines" are "executable binaries which
implement different TeX variants", and "formats" are "the TeX-based
languages in which one actually writes documents". The config file
contains lines like this:
# from lollipop:
lollipop tex - lollipop.ini
#
# from luatex:
luatex luatex language.def,language.dat.lua luatex.ini
dviluatex luatex language.def,language.dat.lua dviluatex.ini
luajittex luajittex language.def,language.dat.lua luatex.ini
#
# from metafont:
mf mf-nowin - -translate-file=cp227.tcx mf.ini
It looks to me like it's fine to include "mfluajit" in the
disabled-formats list. Clearly, some metafont "formats" and "engines"
are included in this config file already. That said, adding "mfluajit"
to the list does nothing right now, since the config file doesn't
actually contain any lines beginning with the word "mfluajit", anyway.
And in any case, if "mfluajit" ever does get added to the config file
somehow, then surely we would want to disable it for powerpc64le-linux,
since LuaJIT is not currently supported on that platform. Therefore, I
think it's correct to include "mfluajit" in the disabled-formats list.
--
Chris
signature.asc
Description: PGP signature
--- End Message ---