Re: linux-next: Tree for Sep 19 (make htmldocs problem)

Mauro Carvalho Chehab
2025-09-21T20:32:56Z

Em Sun, 21 Sep 2025 13:27:48 -0600
Jonathan Corbet <corbet@lwn.net> escreveu:

> Randy Dunlap <rdunlap@infradead.org> writes:
>
> > lrwxrwxrwx 1 root root 4 Sep 11 01:42 /usr/bin/sphinx-build -> alts*
> >
> > $ file /usr/bin/alts
> > /usr/bin/alts: ELF 64-bit LSB pie executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 4.3.0, BuildID[sha1]=17681640c9985eb36ae6d9eca0f08159509386c4, stripped

Such setup looks weird on my eyes... why is it pointing to some other
exec?

>
> That is clearly the problem, when combined with this code in
> sphinx-build-wrapper:
>
> > if self.venv:
> > cmd = ["python"]
> > else:
> > cmd = [sys.executable,]

It ended that an extra comma is here, added on one of my final
rebases. I noticed it already and one of the patches I sent during
the weekend fixes it.

> >
> > cmd += [sphinx_build]
>
> Mauro, what is the reason for explicitly interposing the interpreter
> there rather than just invoking the sphinx-build binary directly? It
> seems like we could take that out and make this problem go away?

I added it to ensure that it would be using exactly the same python
version that was called via makefile, which is called with:

Documentation/Makefile: +$(Q)$(PYTHON3) $(BUILD_WRAPPER) $@ \

See, the other alternatives:

# This may not run the same Python version, as it doesn't
# take PYTHON3 var into account
cmd = [sphinx_build]

and:
# This would require some extra logic for it to work
# when calling shinx-build-wrapper directly from command line
cmd = [PYTHON3, sphinx_build]

are, IMO, more problematic. The actual problem here seems to be that
/usr/bin/sphinx-build is not the actual sphinx-build, but something
else.

Randy,

do you know what is this "alts" file? Is it a custom script or
binary?

Thanks,
Mauro