-
Notifications
You must be signed in to change notification settings - Fork 0
Description
Using the latest pioreactor OS
pioreactor@pioworker1:~ $ pio install-plugin pioled-display-plugin
2024-01-04T12:52:39+0000 DEBUG [install_plugin] Installing plugin pioled-display-plugin.
2024-01-04T12:52:39+0000 DEBUG [install_plugin] bash /usr/local/bin/install_pioreactor_plugin.sh pioled-display-plugin
2024-01-04T12:53:53+0000 ERROR [install_plugin] Failed to install plugin pioled-display-plugin. See logs.
2024-01-04T12:53:53+0000 DEBUG [install_plugin] b"Archive: /tmp/pioled_display_plugin-0.2.4-py3-none-any.whl\n inflating: /tmp/tmp.oOdMrizUnJ/pioled_display_plugin/init.py \n inflating: /tmp/tmp.oOdMrizUnJ/pioled_display_plugin/post_install.sh \n inflating: /tmp/tmp.oOdMrizUnJ/pioled_display_plugin/pre_uninstall.sh \n inflating: /tmp/tmp.oOdMrizUnJ/pioled_display_plugin-0.2.4.dist-info/LICENSE.txt \n inflating: /tmp/tmp.oOdMrizUnJ/pioled_display_plugin-0.2.4.dist-info/METADATA \n inflating: /tmp/tmp.oOdMrizUnJ/pioled_display_plugin-0.2.4.dist-info/WHEEL \n inflating: /tmp/tmp.oOdMrizUnJ/pioled_display_plugin-0.2.4.dist-info/entry_points.txt \n inflating: /tmp/tmp.oOdMrizUnJ/pioled_display_plugin-0.2.4.dist-info/top_level.txt \n inflating: /tmp/tmp.oOdMrizUnJ/pioled_display_plugin-0.2.4.dist-info/RECORD \nCollecting pioled-display-plugin\n Using cached pioled_display_plugin-0.2.4-py3-none-any.whl.metadata (1.5 kB)\nCollecting adafruit-circuitpython-ssd1306==2.12.16 (from pioled-display-plugin)\n Using cached adafruit_circuitpython_ssd1306-2.12.16-py3-none-any.whl.metadata (5.3 kB)\nCollecting Pillow==10.1.0 (from pioled-display-plugin)\n Using cached Pillow-10.1.0.tar.gz (50.8 MB)\n Installing build dependencies: started\n Installing build dependencies: finished with status 'done'\n Getting requirements to build wheel: started\n Getting requirements to build wheel: finished with status 'done'\n Installing backend dependencies: started\n Installing backend dependencies: finished with status 'done'\n Preparing metadata (pyproject.toml): started\n Preparing metadata (pyproject.toml): finished with status 'done'\nCollecting Adafruit-Blinka (from adafruit-circuitpython-ssd1306==2.12.16->pioled-display-plugin)\n Using cached Adafruit_Blinka-8.29.0-py3-none-any.whl.metadata (5.3 kB)\nCollecting adafruit-circuitpython-busdevice (from adafruit-circuitpython-ssd1306==2.12.16->pioled-display-plugin)\n Using cached adafruit_circuitpython_busdevice-5.2.6-py3-none-any.whl.metadata (4.0 kB)\nCollecting adafruit-circuitpython-framebuf (from adafruit-circuitpython-ssd1306==2.12.16->pioled-display-plugin)\n Using cached adafruit_circuitpython_framebuf-1.6.5-py3-none-any.whl.metadata (3.3 kB)\nCollecting Adafruit-PlatformDetect>=3.53.0 (from Adafruit-Blinka->adafruit-circuitpython-ssd1306==2.12.16->pioled-display-plugin)\n Using cached Adafruit_PlatformDetect-3.57.0-py3-none-any.whl.metadata (3.8 kB)\nCollecting Adafruit-PureIO>=1.1.7 (from Adafruit-Blinka->adafruit-circuitpython-ssd1306==2.12.16->pioled-display-plugin)\n Using cached Adafruit_PureIO-1.1.11-py3-none-any.whl.metadata (3.0 kB)\nCollecting pyftdi>=0.40.0 (from Adafruit-Blinka->adafruit-circuitpython-ssd1306==2.12.16->pioled-display-plugin)\n Using cached pyftdi-0.55.0-py3-none-any.whl.metadata (3.1 kB)\nCollecting adafruit-circuitpython-typing (from Adafruit-Blinka->adafruit-circuitpython-ssd1306==2.12.16->pioled-display-plugin)\n Using cached adafruit_circuitpython_typing-1.9.6-py3-none-any.whl.metadata (3.2 kB)\nCollecting pyusb!=1.2.0,>=1.0.0 (from pyftdi>=0.40.0->Adafruit-Blinka->adafruit-circuitpython-ssd1306==2.12.16->pioled-display-plugin)\n Using cached pyusb-1.2.1-py3-none-any.whl (58 kB)\nCollecting pyserial>=3.0 (from pyftdi>=0.40.0->Adafruit-Blinka->adafruit-circuitpython-ssd1306==2.12.16->pioled-display-plugin)\n Using cached pyserial-3.5-py2.py3-none-any.whl (90 kB)\nCollecting adafruit-circuitpython-requests (from adafruit-circuitpython-typing->Adafruit-Blinka->adafruit-circuitpython-ssd1306==2.12.16->pioled-display-plugin)\n Using cached adafruit_circuitpython_requests-2.0.3-py3-none-any.whl.metadata (3.3 kB)\nCollecting typing-extensions~=4.0 (from adafruit-circuitpython-typing->Adafruit-Blinka->adafruit-circuitpython-ssd1306==2.12.16->pioled-display-plugin)\n Using cached typing_extensions-4.9.0-py3-none-any.whl.metadata (3.0 kB)\nUsing cached pioled_display_plugin-0.2.4-py3-none-any.whl (5.4 kB)\nUsing cached adafruit_circuitpython_ssd1306-2.12.16-py3-none-any.whl (7.6 kB)\nUsing cached Adafruit_Blinka-8.29.0-py3-none-any.whl (318 kB)\nUsing cached adafruit_circuitpython_busdevice-5.2.6-py3-none-any.whl (7.5 kB)\nUsing cached adafruit_circuitpython_framebuf-1.6.5-py3-none-any.whl (9.2 kB)\nUsing cached Adafruit_PlatformDetect-3.57.0-py3-none-any.whl (23 kB)\nUsing cached Adafruit_PureIO-1.1.11-py3-none-any.whl (10 kB)\nUsing cached pyftdi-0.55.0-py3-none-any.whl (145 kB)\nUsing cached adafruit_circuitpython_typing-1.9.6-py3-none-any.whl (10 kB)\nUsing cached typing_extensions-4.9.0-py3-none-any.whl (32 kB)\nUsing cached adafruit_circuitpython_requests-2.0.3-py3-none-any.whl (11 kB)\nBuilding wheels for collected packages: Pillow\n Building wheel for Pillow (pyproject.toml): started\n Building wheel for Pillow (pyproject.toml): finished with status 'error'\nFailed to build Pillow\n"
2024-01-04T12:53:53+0000 DEBUG [install_plugin] b'+ export LC_ALL=C\n+ LC_ALL=C\n+ plugin_name=pioled-display-plugin\n+ source=\n+ clean_plugin_name=pioled-display-plugin\n+ clean_plugin_name_with_dashes=pioled-display-plugin\n+ clean_plugin_name_with_underscores=pioled_display_plugin\n++ python3 -c 'import site; print(site.getsitepackages()[0])'\n+ install_folder=/usr/local/lib/python3.11/dist-packages/pioled_display_plugin\n++ crudini --get /home/pioreactor/.pioreactor/config.ini cluster.topology leader_hostname\n+ leader_hostname=pioreactorleader\n++ hostname\n+ '[' pioreactorleader = pioworker1 ']'\n+ am_i_leader=false\n+ '[' -n '' ']'\n+ download_and_check_if_leader_only pioled-display-plugin\n+ local PACKAGE_NAME=pioled-display-plugin\n+ local CLEAN_PACKAGE_NAME=pioled_display_plugin\n+ pip download -qq --no-deps --dest /tmp pioled-display-plugin\n+ local WHL_FILE\n++ ls /tmp/pioled_display_plugin-0.2.4-py3-none-any.whl\n+ WHL_FILE=/tmp/pioled_display_plugin-0.2.4-py3-none-any.whl\n+ local TEMPDIR\n++ mktemp -d\n+ TEMPDIR=/tmp/tmp.oOdMrizUnJ\n+ unzip /tmp/pioled_display_plugin-0.2.4-py3-none-any.whl -d /tmp/tmp.oOdMrizUnJ\n+ '[' -f /tmp/tmp.oOdMrizUnJ/LEADER_ONLY ']'\n+ rm -rf /tmp/tmp.oOdMrizUnJ\n+ return 1\n+ sudo pip3 install --upgrade --force-reinstall --ignore-installed pioled-display-plugin\n error: subprocess-exited-with-error\n \n \xc3\x97 Building wheel for Pillow (pyproject.toml) did not run successfully.\n \xe2\x94\x82 exit code: 1\n \xe2\x95\xb0\xe2\x94\x80> [206 lines of output]\n running bdist_wheel\n running build\n running build_py\n creating build\n creating build/lib.linux-armv7l-cpython-311\n creating build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/features.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/_version.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/_util.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/_tkinter_finder.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/_deprecate.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/_binary.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/main.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/init.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/XpmImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/XbmImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/XVThumbImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/WmfImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/WebPImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/WalImageFile.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/TiffTags.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/TiffImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/TgaImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/TarIO.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/SunImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/SpiderImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/SgiImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/QoiImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/PyAccess.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/PsdImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/PpmImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/PngImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/PixarImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/PdfParser.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/PdfImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/PcxImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/PcfFontFile.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/PcdImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/PalmImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/PaletteFile.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/PSDraw.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/MspImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/MpoImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/MpegImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/MicImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/McIdasImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/JpegPresets.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/JpegImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/Jpeg2KImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/IptcImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/ImtImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/ImageWin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/ImageTransform.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/ImageTk.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/ImageStat.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/ImageShow.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/ImageSequence.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/ImageQt.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/ImagePath.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/ImagePalette.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/ImageOps.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/ImageMorph.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/ImageMode.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/ImageMath.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/ImageGrab.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/ImageFont.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/ImageFilter.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/ImageFile.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/ImageEnhance.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/ImageDraw2.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/ImageDraw.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/ImageColor.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/ImageCms.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/ImageChops.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/Image.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/ImImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/IcoImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/IcnsImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/Hdf5StubImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/GribStubImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/GimpPaletteFile.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/GimpGradientFile.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/GifImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/GdImageFile.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/GbrImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/FtexImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/FpxImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/FontFile.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/FliImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/FitsImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/ExifTags.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/EpsImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/DdsImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/DcxImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/CurImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/ContainerIO.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/BufrStubImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/BmpImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/BlpImagePlugin.py -> build/lib.linux-armv7l-cpython-311/PIL\n copying src/PIL/BdfFontFile.py -> build/lib.linux-armv7l-cpython-311/PIL\n running egg_info\n writing src/Pillow.egg-info/PKG-INFO\n writing dependency_links to src/Pillow.egg-info/dependency_links.txt\n writing requirements to src/Pillow.egg-info/requires.txt\n writing top-level names to src/Pillow.egg-info/top_level.txt\n reading manifest file 'src/Pillow.egg-info/SOURCES.txt'\n reading manifest template 'MANIFEST.in'\n warning: no files found matching '.c'\n warning: no files found matching '.h'\n warning: no files found matching '.sh'\n warning: no files found matching '.txt'\n warning: no previously-included files found matching '.appveyor.yml'\n warning: no previously-included files found matching '.clang-format'\n warning: no previously-included files found matching '.coveragerc'\n warning: no previously-included files found matching '.editorconfig'\n warning: no previously-included files found matching '.readthedocs.yml'\n warning: no previously-included files found matching 'codecov.yml'\n warning: no previously-included files found matching 'renovate.json'\n warning: no previously-included files matching '.git*' found anywhere in distribution\n warning: no previously-included files matching '*.so' found anywhere in distribution\n no previously-included directories found matching '.ci'\n no previously-included directories found matching 'wheels'\n adding license file 'LICENSE'\n writing manifest file 'src/Pillow.egg-info/SOURCES.txt'\n running build_ext\n \n \n The headers or library files could not be found for jpeg,\n a required dependency when compiling Pillow from source.\n \n Please see the install instructions at:\n https://pillow.readthedocs.io/en/latest/installation.html\n \n Traceback (most recent call last):\n File "", line 988, in \n File "/tmp/pip-build-env-72bewtfl/overlay/local/lib/python3.11/dist-packages/setuptools/init.py", line 103, in setup\n return distutils.core.setup(**attrs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File "/tmp/pip-build-env-72bewtfl/overlay/local/lib/python3.11/dist-packages/setuptools/_distutils/core.py", line 185, in setup\n return run_commands(dist)\n ^^^^^^^^^^^^^^^^^^\n File "/tmp/pip-build-env-72bewtfl/overlay/local/lib/python3.11/dist-packages/setuptools/_distutils/core.py", line 201, in run_commands\n dist.run_commands()\n File "/tmp/pip-build-env-72bewtfl/overlay/local/lib/python3.11/dist-packages/setuptools/_distutils/dist.py", line 969, in run_commands\n self.run_command(cmd)\n File "/tmp/pip-build-env-72bewtfl/overlay/local/lib/python3.11/dist-packages/setuptools/dist.py", line 963, in run_command\n super().run_command(command)\n File "/tmp/pip-build-env-72bewtfl/overlay/local/lib/python3.11/dist-packages/setuptools/_distutils/dist.py", line 988, in run_command\n cmd_obj.run()\n File "/tmp/pip-build-env-72bewtfl/normal/local/lib/python3.11/dist-packages/wheel/bdist_wheel.py", line 368, in run\n self.run_command("build")\n File "/tmp/pip-build-env-72bewtfl/overlay/local/lib/python3.11/dist-packages/setuptools/_distutils/cmd.py", line 318, in run_command\n self.distribution.run_command(command)\n File "/tmp/pip-build-env-72bewtfl/overlay/local/lib/python3.11/dist-packages/setuptools/dist.py", line 963, in run_command\n super().run_command(command)\n File "/tmp/pip-build-env-72bewtfl/overlay/local/lib/python3.11/dist-packages/setuptools/_distutils/dist.py", line 988, in run_command\n cmd_obj.run()\n File "/tmp/pip-build-env-72bewtfl/overlay/local/lib/python3.11/dist-packages/setuptools/_distutils/command/build.py", line 131, in run\n self.run_command(cmd_name)\n File "/tmp/pip-build-env-72bewtfl/overlay/local/lib/python3.11/dist-packages/setuptools/_distutils/cmd.py", line 318, in run_command\n self.distribution.run_command(command)\n File "/tmp/pip-build-env-72bewtfl/overlay/local/lib/python3.11/dist-packages/setuptools/dist.py", line 963, in run_command\n super().run_command(command)\n File "/tmp/pip-build-env-72bewtfl/overlay/local/lib/python3.11/dist-packages/setuptools/_distutils/dist.py", line 988, in run_command\n cmd_obj.run()\n File "/tmp/pip-build-env-72bewtfl/overlay/local/lib/python3.11/dist-packages/setuptools/command/build_ext.py", line 88, in run\n _build_ext.run(self)\n File "/tmp/pip-build-env-72bewtfl/overlay/local/lib/python3.11/dist-packages/setuptools/_distutils/command/build_ext.py", line 345, in run\n self.build_extensions()\n File "", line 811, in build_extensions\n RequiredDependencyException: jpeg\n \n During handling of the above exception, another exception occurred:\n \n Traceback (most recent call last):\n File "/usr/local/lib/python3.11/dist-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in \n main()\n File "/usr/local/lib/python3.11/dist-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main\n json_out['return_val'] = hook(**hook_input['kwargs'])\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File "/usr/local/lib/python3.11/dist-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 251, in build_wheel\n return _build_backend().build_wheel(wheel_directory, config_settings,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File "/tmp/pip-install-bpic0rtz/pillow_2d1fcd7239e54352911a667fa71f59fb/_custom_build/backend.py", line 53, in build_wheel\n return super().build_wheel(wheel_directory, config_settings, metadata_directory)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File "/tmp/pip-build-env-72bewtfl/overlay/local/lib/python3.11/dist-packages/setuptools/build_meta.py", line 404, in build_wheel\n return self._build_with_temp_dir(\n ^^^^^^^^^^^^^^^^^^^^^^^^^^\n File "/tmp/pip-build-env-72bewtfl/overlay/local/lib/python3.11/dist-packages/setuptools/build_meta.py", line 389, in _build_with_temp_dir\n self.run_setup()\n File "/tmp/pip-install-bpic0rtz/pillow_2d1fcd7239e54352911a667fa71f59fb/_custom_build/backend.py", line 47, in run_setup\n return super().run_setup(setup_script)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File "/tmp/pip-build-env-72bewtfl/overlay/local/lib/python3.11/dist-packages/setuptools/build_meta.py", line 311, in run_setup\n exec(code, locals())\n File "", line 1005, in \n RequiredDependencyException:\n \n The headers or library files could not be found for jpeg,\n a required dependency when compiling Pillow from source.\n \n Please see the install instructions at:\n https://pillow.readthedocs.io/en/latest/installation.html\n \n \n [end of output]\n \n note: This error originates from a subprocess, and is likely not a problem with pip.\n ERROR: Failed building wheel for Pillow\nERROR: Could not build wheels for Pillow, which is required to install pyproject.toml-based projects\n'