title: How to install Pillow on termux?
body: <p>I am using Termux for quite a while now and would like to install &quot;Pillow&quot; library on it. Whenever I try to install Pillow using &quot;pip&quot; it shows me the below errors.<br />
  At first I thought I need to upgrade pip, but it did not help. I have also cleared caches, to no avail.</p>
  <p><strong>Error</strong></p>
  <pre><code>$ python3 -m pip install Pillow==7.2.0          Collecting Pillow==7.2.0                          Using cached Pillow-7.2.0.tar.gz (39.1 MB)    Using legacy setup.py install for Pillow, since package 'wheel' is not installed.               Installing collected packages: Pillow               Running setup.py install for Pillow ... error                                                   ERROR: Command errored out with exit status 1:                                                   command: /data/data/com.termux/files/usr/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '&quot;'&quot;'/data/data/com.termux/files/usr/tmp/pip-install-48geu0sg/Pillow/setup.py'&quot;'&quot;'; __file__='&quot;'&quot;'/data/data/com.termux/files/usr/tmp/pip-install-48geu0sg/Pillow/setup.py'&quot;'&quot;';f=getattr(tokenize, '&quot;'&quot;'open'&quot;'&quot;', open)(__file__);code=f.read().replace('&quot;'&quot;'\r\n'&quot;'&quot;', '&quot;'&quot;'\n'&quot;'&quot;');f.close();exec(compile(code, __file__, '&quot;'&quot;'exec'&quot;'&quot;'))' install --record /data/data/com.termux/files/usr/tmp/pip-record-rstq_guv/install-record.txt --single-version-externally-managed --compile --install-headers /data/data/com.termux/files/usr/include/python3.8/Pillow                   cwd: /data/data/com.termux/files/usr/tmp/pip-install-48geu0sg/Pillow/                      Complete output (172 lines):                    running install                                 running build
      running build_py
      creating build
      creating build/lib.linux-aarch64-3.8
      creating build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/BdfFontFile.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/BlpImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/BmpImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/BufrStubImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/ContainerIO.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/CurImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/DcxImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/DdsImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/EpsImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/ExifTags.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/FitsStubImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/FliImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/FontFile.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/FpxImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/FtexImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/GbrImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/GdImageFile.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/GifImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/GimpGradientFile.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/GimpPaletteFile.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/GribStubImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/Hdf5StubImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/IcnsImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/IcoImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/ImImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/Image.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/ImageChops.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/ImageCms.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/ImageColor.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/ImageDraw.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/ImageDraw2.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/ImageEnhance.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/ImageFile.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/ImageFilter.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/ImageFont.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/ImageGrab.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/ImageMath.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/ImageMode.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/ImageMorph.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/ImageOps.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/ImagePalette.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/ImagePath.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/ImageQt.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/ImageSequence.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/ImageShow.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/ImageStat.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/ImageTk.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/ImageTransform.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/ImageWin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/ImtImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/IptcImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/Jpeg2KImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/JpegImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/JpegPresets.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/McIdasImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/MicImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/MpegImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/MpoImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/MspImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/PSDraw.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/PaletteFile.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/PalmImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/PcdImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/PcfFontFile.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/PcxImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/PdfImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/PdfParser.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/PixarImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/PngImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/PpmImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/PsdImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/PyAccess.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/SgiImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/SpiderImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/SunImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/TarIO.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/TgaImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/TiffImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/TiffTags.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/WalImageFile.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/WebPImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/WmfImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/XVThumbImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/XbmImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/XpmImagePlugin.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/__init__.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/__main__.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/_binary.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/_tkinter_finder.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/_util.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/_version.py -&gt; build/lib.linux-aarch64-3.8/PIL
      copying src/PIL/features.py -&gt; build/lib.linux-aarch64-3.8/PIL
      running egg_info
      writing src/Pillow.egg-info/PKG-INFO
      writing dependency_links to src/Pillow.egg-info/dependency_links.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 previously-included files found matching '.appveyor.yml'
      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 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'
      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 &quot;/data/data/com.termux/files/usr/tmp/pip-install-48geu0sg/Pillow/setup.py&quot;, line 864, in &lt;module&gt;
          setup(
        File &quot;/data/data/com.termux/files/usr/lib/python3.8/site-packages/setuptools/__init__.py&quot;, line 145, in setup
          return distutils.core.setup(**attrs)
        File &quot;/data/data/com.termux/files/usr/lib/python3.8/distutils/core.py&quot;, line 148, in setup
          dist.run_commands()
        File &quot;/data/data/com.termux/files/usr/lib/python3.8/distutils/dist.py&quot;, line 966, in run_commands
          self.run_command(cmd)
        File &quot;/data/data/com.termux/files/usr/lib/python3.8/distutils/dist.py&quot;, line 985, in run_command
          cmd_obj.run()
        File &quot;/data/data/com.termux/files/usr/lib/python3.8/site-packages/setuptools/command/install.py&quot;, line 61, in run
          return orig.install.run(self)
        File &quot;/data/data/com.termux/files/usr/lib/python3.8/distutils/command/install.py&quot;, line 545, in run
          self.run_command('build')
        File &quot;/data/data/com.termux/files/usr/lib/python3.8/distutils/cmd.py&quot;, line 313, in run_command
          self.distribution.run_command(command)
        File &quot;/data/data/com.termux/files/usr/lib/python3.8/distutils/dist.py&quot;, line 985, in run_command
          cmd_obj.run()
        File &quot;/data/data/com.termux/files/usr/lib/python3.8/distutils/command/build.py&quot;, line 135, in run
          self.run_command(cmd_name)
        File &quot;/data/data/com.termux/files/usr/lib/python3.8/distutils/cmd.py&quot;, line 313, in run_command
          self.distribution.run_command(command)
        File &quot;/data/data/com.termux/files/usr/lib/python3.8/distutils/dist.py&quot;, line 985, in run_command
          cmd_obj.run()
        File &quot;/data/data/com.termux/files/usr/lib/python3.8/distutils/command/build_ext.py&quot;, line 340, in run
          self.build_extensions()
        File &quot;/data/data/com.termux/files/usr/tmp/pip-install-48geu0sg/Pillow/setup.py&quot;, line 694, in build_extensions
          raise RequiredDependencyException(f)
      __main__.RequiredDependencyException: jpeg
  
      During handling of the above exception, another exception occurred:
  
      Traceback (most recent call last):
        File &quot;&lt;string&gt;&quot;, line 1, in &lt;module&gt;
        File &quot;/data/data/com.termux/files/usr/tmp/pip-install-48geu0sg/Pillow/setup.py&quot;, line 918, in &lt;module&gt;
          raise RequiredDependencyException(msg)
      __main__.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
  
  
      ----------------------------------------
  ERROR: Command errored out with exit status 1: /data/data/com.termux/files/usr/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '&quot;'&quot;'/data/data/com.termux/files/usr/tmp/pip-install-48geu0sg/Pillow/setup.py'&quot;'&quot;'; __file__='&quot;'&quot;'/data/data/com.termux/files/usr/tmp/pip-install-48geu0sg/Pillow/setup.py'&quot;'&quot;';f=getattr(tokenize, '&quot;'&quot;'open'&quot;'&quot;', open)(__file__);code=f.read().replace('&quot;'&quot;'\r\n'&quot;'&quot;', '&quot;'&quot;'\n'&quot;'&quot;');f.close();exec(compile(code, __file__, '&quot;'&quot;'exec'&quot;'&quot;'))' install --record /data/data/com.termux/files/usr/tmp/pip-record-rstq_guv/install-record.txt --single-version-externally-managed --compile --install-headers /data/data/com.termux/files/usr/include/python3.8/Pillow Check the logs for full command output.
  </code></pre>
  <p>How do I install Pillow on termux?</p>