I'm trying to build documentation in epup format for offline reading on my old android tablet.
Currently using termux, with python3.
After got clone, I cd in to doc Dir,then run:
$ make epub
sphinx-build -b epub -d build/doctrees source build/epub Running Sphinx v5.3.0
WARNING: Invalid configuration value found: 'language = None'. Update your configuration to a valid language code. Falling back to 'en' (English).
Extension error:
Could not import extension sphinx_sitemap (exception: No module named 'sphinx_sitemap')
make: *** [Makefile:125: epub] Error 2
At first I needed to pip install sphinx_rtd_theme, then it complained about missing sphinx_sitemap. and finally about missing 'sphinxcontrib.blockdiag'. Is this expected?
pip install -r requirements.txt --upgrade
Collecting blockdiag>=2.0.0
Using cached blockdiag-3.0.0-py3-none-any.whl (2.7 MB)
Collecting nwdiag>=2.0.0
Using cached nwdiag-3.0.0-py3-none-any.whl (7.7 MB)
Collecting seqdiag>=2.0.0
Using cached seqdiag-3.0.0-py3-none-any.whl (2.6 MB)
Collecting actdiag>=2.0.0
Using cached actdiag-3.0.0-py3-none-any.whl (2.6 MB)
Requirement already satisfied: sphinx in /data/data/com.termux/files/usr/lib/python3.11/site-packages (from -r requirements.txt (line 5)) (5.3.0)
Requirement already satisfied: sphinx-sitemap in /data/data/com.termux/files/usr/lib/python3.11/site-packages (from -r requirements.txt (line 6)) (2.2.1)
Collecting sphinx_rtd_theme==0.5.2
Using cached sphinx_rtd_theme-0.5.2-py2.py3-none-any.whl (9.1 MB)
Collecting sphinxcontrib-blockdiag
Using cached sphinxcontrib_blockdiag-3.0.0-py2.py3-none-any.whl (6.8 kB)
Collecting sphinxcontrib-nwdiag
Using cached sphinxcontrib_nwdiag-2.0.0-py2.py3-none-any.whl (13 kB)
Collecting sphinxcontrib-seqdiag
Using cached sphinxcontrib_seqdiag-3.0.0-py2.py3-none-any.whl (6.9 kB)
Collecting sphinxcontrib-actdiag
Using cached sphinxcontrib_actdiag-3.0.0-py2.py3-none-any.whl (6.9 kB)
Collecting blockdiagcontrib-cisco
Using cached blockdiagcontrib-cisco-0.1.8.tar.gz (5.8 MB)
Preparing metadata (setup.py) ... done
Collecting Pillow
Using cached Pillow-9.3.0.tar.gz (50.4 MB)
Preparing metadata (setup.py) ... done
Collecting docutils<0.17
Using cached docutils-0.16-py2.py3-none-any.whl (548 kB)
Requirement already satisfied: setuptools in /data/data/com.termux/files/usr/lib/python3.11/site-packages (from blockdiag>=2.0.0->-r requirements.txt (line 1)) (65.5.0)
Collecting funcparserlib>=1.0.0a0
Using cached funcparserlib-1.0.1-py2.py3-none-any.whl (17 kB)
Requirement already satisfied: webcolors in /data/data/com.termux/files/usr/lib/python3.11/site-packages (from blockdiag>=2.0.0->-r requirements.txt (line 1)) (1.12)
Requirement already satisfied: sphinxcontrib-applehelp in /data/data/com.termux/files/usr/lib/python3.11/site-packages (from sphinx->-r requirements.txt (line 5)) (1.0.2)
Requirement already satisfied: sphinxcontrib-devhelp in /data/data/com.termux/files/usr/lib/python3.11/site-packages (from sphinx->-r requirements.txt (line 5)) (1.0.2)
Requirement already satisfied: sphinxcontrib-jsmath in /data/data/com.termux/files/usr/lib/python3.11/site-packages (from sphinx->-r requirements.txt (line 5)) (1.0.1)
Requirement already satisfied: sphinxcontrib-htmlhelp>=2.0.0 in /data/data/com.termux/files/usr/lib/python3.11/site-packages (from sphinx->-r requirements.txt (line 5)) (2.0.0)
Requirement already satisfied: sphinxcontrib-serializinghtml>=1.1.5 in /data/data/com.termux/files/usr/lib/python3.11/site-packages (from sphinx->-r requirements.txt (line 5)) (1.1.5)
Requirement already satisfied: sphinxcontrib-qthelp in /data/data/com.termux/files/usr/lib/python3.11/site-packages (from sphinx->-r requirements.txt (line 5)) (1.0.3)
Requirement already satisfied: Jinja2>=3.0 in /data/data/com.termux/files/usr/lib/python3.11/site-packages (from sphinx->-r requirements.txt (line 5)) (3.1.2)
Requirement already satisfied: Pygments>=2.12 in /data/data/com.termux/files/usr/lib/python3.11/site-packages (from sphinx->-r requirements.txt (line 5)) (2.13.0)
Requirement already satisfied: snowballstemmer>=2.0 in /data/data/com.termux/files/usr/lib/python3.11/site-packages (from sphinx->-r requirements.txt (line 5)) (2.2.0)
Requirement already satisfied: babel>=2.9 in /data/data/com.termux/files/usr/lib/python3.11/site-packages (from sphinx->-r requirements.txt (line 5)) (2.11.0)
Requirement already satisfied: alabaster<0.8,>=0.7 in /data/data/com.termux/files/usr/lib/python3.11/site-packages (from sphinx->-r requirements.txt (line 5)) (0.7.12)
Requirement already satisfied: imagesize>=1.3 in /data/data/com.termux/files/usr/lib/python3.11/site-packages (from sphinx->-r requirements.txt (line 5)) (1.4.1)
Requirement already satisfied: requests>=2.5.0 in /data/data/com.termux/files/usr/lib/python3.11/site-packages (from sphinx->-r requirements.txt (line 5)) (2.28.1)
Requirement already satisfied: packaging>=21.0 in /data/data/com.termux/files/usr/lib/python3.11/site-packages (from sphinx->-r requirements.txt (line 5)) (22.0)
Requirement already satisfied: six in /data/data/com.termux/files/usr/lib/python3.11/site-packages (from sphinx-sitemap->-r requirements.txt (line 6)) (1.16.0)
Requirement already satisfied: pytz>=2015.7 in /data/data/com.termux/files/usr/lib/python3.11/site-packages (from babel>=2.9->sphinx->-r requirements.txt (line 5)) (2022.7)
Requirement already satisfied: MarkupSafe>=2.0 in /data/data/com.termux/files/usr/lib/python3.11/site-packages (from Jinja2>=3.0->sphinx->-r requirements.txt (line 5)) (2.1.1)
Requirement already satisfied: charset-normalizer<3,>=2 in /data/data/com.termux/files/usr/lib/python3.11/site-packages (from requests>=2.5.0->sphinx->-r requirements.txt (line 5)) (2.1.1)
Requirement already satisfied: idna<4,>=2.5 in /data/data/com.termux/files/usr/lib/python3.11/site-packages (from requests>=2.5.0->sphinx->-r requirements.txt (line 5)) (3.4)
Requirement already satisfied: urllib3<1.27,>=1.21.1 in /data/data/com.termux/files/usr/lib/python3.11/site-packages (from requests>=2.5.0->sphinx->-r requirements.txt (line 5)) (1.26.13)
Requirement already satisfied: certifi>=2017.4.17 in /data/data/com.termux/files/usr/lib/python3.11/site-packages (from requests>=2.5.0->sphinx->-r requirements.txt (line 5)) (2022.12.7)
Installing collected packages: Pillow, funcparserlib, docutils, blockdiag, sphinxcontrib-blockdiag, sphinx_rtd_theme, seqdiag, nwdiag, blockdiagcontrib-cisco, actdiag, sphinxcontrib-seqdiag, sphinxcontrib-nwdiag, sphinxcontrib-actdiag
DEPRECATION: Pillow is being installed using the legacy 'setup.py install' method, because it does not have a 'pyproject.toml' and the 'wheel' package is not installed. pip 23.1 will enforce this behaviour change. A possible replacement is to enable the '--use-pep517' option. Discussion can be found at https://github.com/pypa/pip/issues/8559
Running setup.py install for Pillow ... error
error: subprocess-exited-with-error
× Running setup.py install for Pillow did not run successfully.
│ exit code: 1
╰─> [195 lines of output]
running install
/data/data/com.termux/files/usr/lib/python3.11/site-packages/setuptools/command/install.py:34: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools.
warnings.warn(
running build
running build_py
creating build
creating build/lib.linux-armv7l-cpython-311
creating build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/BdfFontFile.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/BlpImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/BmpImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/BufrStubImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/ContainerIO.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/CurImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/DcxImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/DdsImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/EpsImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/ExifTags.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/FitsImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/FitsStubImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/FliImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/FontFile.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/FpxImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/FtexImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/GbrImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/GdImageFile.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/GifImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/GimpGradientFile.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/GimpPaletteFile.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/GribStubImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/Hdf5StubImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/IcnsImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/IcoImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/ImImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/Image.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/ImageChops.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/ImageCms.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/ImageColor.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/ImageDraw.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/ImageDraw2.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/ImageEnhance.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/ImageFile.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/ImageFilter.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/ImageFont.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/ImageGrab.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/ImageMath.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/ImageMode.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/ImageMorph.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/ImageOps.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/ImagePalette.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/ImagePath.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/ImageQt.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/ImageSequence.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/ImageShow.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/ImageStat.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/ImageTk.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/ImageTransform.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/ImageWin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/ImtImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/IptcImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/Jpeg2KImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/JpegImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/JpegPresets.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/McIdasImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/MicImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/MpegImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/MpoImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/MspImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/PSDraw.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/PaletteFile.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/PalmImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/PcdImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/PcfFontFile.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/PcxImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/PdfImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/PdfParser.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/PixarImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/PngImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/PpmImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/PsdImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/PyAccess.py -> build/lib.linux-armv7l-cpython-311/PIL copying src/PIL/SgiImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL copying src/PIL/SpiderImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/SunImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL copying src/PIL/TarIO.py -> build/lib.linux-armv7l-cpython-311/PIL copying src/PIL/TgaImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/TiffImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL copying src/PIL/TiffTags.py -> build/lib.linux-armv7l-cpython-311/PIL copying src/PIL/WalImageFile.py -> build/lib.linux-armv7l-cpython-311/PIL copying src/PIL/WebPImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL copying src/PIL/WmfImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/XVThumbImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/XbmImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/XpmImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/__init__.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/__main__.py -> build/lib.linux-armv7l-cpython-311/PIL copying src/PIL/_binary.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/_deprecate.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/_tkinter_finder.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/_util.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/_version.py -> build/lib.linux-armv7l-cpython-311/PIL
copying src/PIL/features.py -> build/lib.linux-armv7l-cpython-311/PIL
running egg_info
writing src/Pillow.egg-info/PKG-INFO
writing dependency_links to src/Pillow.egg-info/dependency_links.txt
writing requirements to src/Pillow.egg-info/requires.txt
writing top-level names to src/Pillow.egg-info/top_level.txt
reading manifest file 'src/Pillow.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no files found matching '*.c'
warning: no files found matching '*.h'
warning: no files found matching '*.sh'
warning: no files found matching '*.txt'
warning: no previously-included files found matching '.appveyor.yml'
warning: no previously-included files found matching '.clang-format'
warning: no previously-included files found matching '.coveragerc'
warning: no previously-included files found matching '.editorconfig'
warning: no previously-included files found matching '.readthedocs.yml'
warning: no previously-included files found matching 'codecov.yml'
warning: no previously-included files found matching 'renovate.json'
warning: no previously-included files matching '.git*' found anywhere in distribution
warning: no previously-included files matching '*.pyc' found anywhere in distribution
warning: no previously-included files matching '*.so' found anywhere in distribution no previously-included directories found matching '.ci'
adding license file 'LICENSE'
writing manifest file 'src/Pillow.egg-info/SOURCES.txt'
running build_ext
The headers or library files could not be found for jpeg,
a required dependency when compiling Pillow from source.
Please see the install instructions at:
https://pillow.readthedocs.io/en/latest/installation.html
Traceback (most recent call last):
File "/data/data/com.termux/files/usr/tmp/pip-install-g2elmug3/pillow_2c263168816148a3a5854e46c835cfa7/setup.py", line 995, in <module>
setup(
File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/setuptools/__init__.py", line 87, in setup
return distutils.core.setup(**attrs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/setuptools/_distutils/core.py", line 185, in setup
return run_commands(dist)
^^^^^^^^^^^^^^^^^^
File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/setuptools/_distutils/core.py", line 201, in run_commands
dist.run_commands()
File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 968, in run_commands
self.run_command(cmd)
File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/setuptools/dist.py", line 1217, in run_command
super().run_command(command)
File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 987, in run_command
cmd_obj.run()
File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/setuptools/command/install.py", line 68, in run
return orig.install.run(self)
^^^^^^^^^^^^^^^^^^^^^^
File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/setuptools/_distutils/command/install.py", line 698, in run
self.run_command('build')
File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/setuptools/_distutils/cmd.py", line 319, in run_command
self.distribution.run_command(command)
File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/setuptools/dist.py", line 1217, in run_command super().run_command(command) File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 987, in run_command
cmd_obj.run()
File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/setuptools/_distutils/command/build.py", line 132, in run
self.run_command(cmd_name) File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/setuptools/_distutils/cmd.py", line 319, in run_command
self.distribution.run_command(command) File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/setuptools/dist.py", line 1217, in run_command
super().run_command(command) File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 987, in run_command
cmd_obj.run() File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/setuptools/command/build_ext.py", line 84, in run
_build_ext.run(self) File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/setuptools/_distutils/command/build_ext.py", line 346, in run
self.build_extensions() File "/data/data/com.termux/files/usr/tmp/pip-install-g2elmug3/pillow_2c263168816148a3a5854e46c835cfa7/setup.py", line 810, in build_extensions
raise RequiredDependencyException(f) RequiredDependencyException: jpeg
During handling of the above exception, another exception occurred:
Traceback (most recent call last): File "<string>", line 2, in <module> File "<pip-setuptools-caller>", line 34, in <module>
File "/data/data/com.termux/files/usr/tmp/pip-install-g2elmug3/pillow_2c263168816148a3a5854e46c835cfa7/setup.py", line 1012, in <module>
raise RequiredDependencyException(msg) RequiredDependencyException:
The headers or library files could not be found for jpeg, a required dependency when compiling Pillow from source.
Please see the install instructions at: https://pillow.readthedocs.io/en/latest/installation.html
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
error: legacy-install-failure × Encountered error while trying to install package.
╰─> Pillow note: This is an issue with the package mentioned above, not pip.
hint: See above for output from the failure.
I'm quite new to building with 'read the docs', is this recommended method for reading manual offline?
Dear experts,
I'm trying to build documentation in epup format for offline reading on my old android tablet. Currently using termux, with python3.
After got clone, I cd in to doc Dir,then run:
At first I needed to pip install sphinx_rtd_theme, then it complained about missing sphinx_sitemap. and finally about missing 'sphinxcontrib.blockdiag'. Is this expected?
I'm quite new to building with 'read the docs', is this recommended method for reading manual offline?