skia-pathops
skia-pathops copied to clipboard
Errors with building the wheel while installing
Hello everyone. I apologize in advance if this issue might be a bit stupid. I am not much of a developer, and I dont know a lot about python. Im on Debian GNU/Linux 12 (bookworm) i686, my CPU is a Intel i7 M 620 (4) @ 2.667GHz. When I try to install skia-pathops, I get the following error log:
pip3 install --upgrade skia-pathops --break-system-packages
Defaulting to user installation because normal site-packages is not writeable
Collecting skia-pathops
Using cached skia-pathops-0.8.0.post1.zip (67.0 MB)
Installing build dependencies ... done
Getting requirements to build wheel ... done
Preparing metadata (pyproject.toml) ... done
Building wheels for collected packages: skia-pathops
Building wheel for skia-pathops (pyproject.toml) ... error
error: subprocess-exited-with-error
× Building wheel for skia-pathops (pyproject.toml) did not run successfully.
│ exit code: 1
╰─> [111 lines of output]
<string>:7: DeprecationWarning: dep_util is Deprecated. Use functions from setuptools instead.
<string>:11: DeprecationWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html
WARNING setuptools_scm._integration.setuptools pyproject.toml does not contain a tool.setuptools_scm section
WARNING setuptools_scm.pyproject_reading toml section missing 'pyproject.toml does not contain a tool.setuptools_scm section'
running bdist_wheel
running build
running build_py
creating build
creating build/lib.linux-i686-cpython-311
creating build/lib.linux-i686-cpython-311/pathops
copying src/python/pathops/__init__.py -> build/lib.linux-i686-cpython-311/pathops
copying src/python/pathops/_version.py -> build/lib.linux-i686-cpython-311/pathops
copying src/python/pathops/operations.py -> build/lib.linux-i686-cpython-311/pathops
running build_ext
building 'pathops._pathops' extension
creating build/temp.linux-i686-cpython-311
creating build/temp.linux-i686-cpython-311/src
creating build/temp.linux-i686-cpython-311/src/python
creating build/temp.linux-i686-cpython-311/src/python/pathops
i686-linux-gnu-gcc -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -fPIC -Isrc/cpp/skia-builder/skia -Isrc/cpp/skia-builder/skia/src -I/usr/include/python3.11 -c src/python/pathops/_pathops.cpp -o build/temp.linux-i686-cpython-311/src/python/pathops/_pathops.o -std=c++17
In file included from src/cpp/skia-builder/skia/include/pathops/SkPathOps.h:12,
from src/python/pathops/_pathops.cpp:1292:
src/cpp/skia-builder/skia/include/private/base/SkTArray.h:518:33: warning: ‘cfi’ attribute directive ignored [-Wattributes]
518 | static T* TCast(void* buffer) {
| ^
building 'skia' library
created virtual environment CPython3.11.2.final.0-32 in 2044ms
creator CPython3Posix(dest=/tmp/pip-install-vs65uuau/skia-pathops_30569824bef04a5f805a99134b3f6430/build/temp.linux-i686-cpython-311/src/cpp/skia-builder/skia/venv, clear=False, no_vcs_ignore=False, global=False)
seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/home/tom/.local/share/virtualenv)
added seed packages: pip==24.0, setuptools==69.1.0, wheel==0.42.0
activators BashActivator,CShellActivator,FishActivator,NushellActivator,PowerShellActivator,PythonActivator
Collecting ninja
Using cached ninja-1.11.1.1-py2.py3-none-manylinux1_i686.manylinux_2_5_i686.whl.metadata (5.3 kB)
Using cached ninja-1.11.1.1-py2.py3-none-manylinux1_i686.manylinux_2_5_i686.whl (324 kB)
Installing collected packages: ninja
Successfully installed ninja-1.11.1.1
Traceback (most recent call last):
File "/tmp/pip-install-vs65uuau/skia-pathops_30569824bef04a5f805a99134b3f6430/src/cpp/skia-builder/skia/bin/fetch-gn", line 26, in <module>
cpu = {'aarch64': 'arm64', 'amd64': 'amd64', 'arm64': 'arm64', 'x86_64': 'amd64'}[platform.machine().lower()]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
KeyError: 'i686'
Traceback (most recent call last):
File "/tmp/pip-install-vs65uuau/skia-pathops_30569824bef04a5f805a99134b3f6430/src/cpp/skia-builder/build_skia.py", line 220, in <module>
subprocess.check_call(
File "/usr/lib/python3.11/subprocess.py", line 413, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['python', 'bin/fetch-gn']' returned non-zero exit status 1.
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
main()
File "/usr/lib/python3/dist-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main
json_out['return_val'] = hook(**hook_input['kwargs'])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 251, in build_wheel
return _build_backend().build_wheel(wheel_directory, config_settings,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/tmp/pip-build-env-vlu0bz3b/overlay/local/lib/python3.11/dist-packages/setuptools/build_meta.py", line 410, in build_wheel
return self._build_with_temp_dir(
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/tmp/pip-build-env-vlu0bz3b/overlay/local/lib/python3.11/dist-packages/setuptools/build_meta.py", line 395, in _build_with_temp_dir
self.run_setup()
File "/tmp/pip-build-env-vlu0bz3b/overlay/local/lib/python3.11/dist-packages/setuptools/build_meta.py", line 487, in run_setup
super().run_setup(setup_script=setup_script)
File "/tmp/pip-build-env-vlu0bz3b/overlay/local/lib/python3.11/dist-packages/setuptools/build_meta.py", line 311, in run_setup
exec(code, locals())
File "<string>", line 410, in <module>
File "/tmp/pip-build-env-vlu0bz3b/overlay/local/lib/python3.11/dist-packages/setuptools/__init__.py", line 104, in setup
return distutils.core.setup(**attrs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/tmp/pip-build-env-vlu0bz3b/overlay/local/lib/python3.11/dist-packages/setuptools/_distutils/core.py", line 185, in setup
return run_commands(dist)
^^^^^^^^^^^^^^^^^^
File "/tmp/pip-build-env-vlu0bz3b/overlay/local/lib/python3.11/dist-packages/setuptools/_distutils/core.py", line 201, in run_commands
dist.run_commands()
File "/tmp/pip-build-env-vlu0bz3b/overlay/local/lib/python3.11/dist-packages/setuptools/_distutils/dist.py", line 969, in run_commands
self.run_command(cmd)
File "/tmp/pip-build-env-vlu0bz3b/overlay/local/lib/python3.11/dist-packages/setuptools/dist.py", line 967, in run_command
super().run_command(command)
File "/tmp/pip-build-env-vlu0bz3b/overlay/local/lib/python3.11/dist-packages/setuptools/_distutils/dist.py", line 988, in run_command
cmd_obj.run()
File "/tmp/pip-build-env-vlu0bz3b/overlay/local/lib/python3.11/dist-packages/wheel/bdist_wheel.py", line 368, in run
self.run_command("build")
File "/tmp/pip-build-env-vlu0bz3b/overlay/local/lib/python3.11/dist-packages/setuptools/_distutils/cmd.py", line 318, in run_command
self.distribution.run_command(command)
File "/tmp/pip-build-env-vlu0bz3b/overlay/local/lib/python3.11/dist-packages/setuptools/dist.py", line 967, in run_command
super().run_command(command)
File "/tmp/pip-build-env-vlu0bz3b/overlay/local/lib/python3.11/dist-packages/setuptools/_distutils/dist.py", line 988, in run_command
cmd_obj.run()
File "/tmp/pip-build-env-vlu0bz3b/overlay/local/lib/python3.11/dist-packages/setuptools/_distutils/command/build.py", line 131, in run
self.run_command(cmd_name)
File "/tmp/pip-build-env-vlu0bz3b/overlay/local/lib/python3.11/dist-packages/setuptools/_distutils/cmd.py", line 318, in run_command
self.distribution.run_command(command)
File "/tmp/pip-build-env-vlu0bz3b/overlay/local/lib/python3.11/dist-packages/setuptools/dist.py", line 967, in run_command
super().run_command(command)
File "/tmp/pip-build-env-vlu0bz3b/overlay/local/lib/python3.11/dist-packages/setuptools/_distutils/dist.py", line 988, in run_command
cmd_obj.run()
File "<string>", line 216, in run
File "/tmp/pip-build-env-vlu0bz3b/overlay/local/lib/python3.11/dist-packages/setuptools/command/build_ext.py", line 91, in run
_build_ext.run(self)
File "/tmp/pip-build-env-vlu0bz3b/overlay/local/lib/python3.11/dist-packages/setuptools/_distutils/command/build_ext.py", line 345, in run
self.build_extensions()
File "/tmp/pip-build-env-vlu0bz3b/overlay/local/lib/python3.11/dist-packages/setuptools/_distutils/command/build_ext.py", line 467, in build_extensions
self._build_extensions_serial()
File "/tmp/pip-build-env-vlu0bz3b/overlay/local/lib/python3.11/dist-packages/setuptools/_distutils/command/build_ext.py", line 493, in _build_extensions_serial
self.build_extension(ext)
File "<string>", line 193, in build_extension
File "<string>", line 210, in get_libraries
File "<string>", line 279, in build_skia
File "/usr/lib/python3.11/subprocess.py", line 571, in run
raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['/usr/bin/python3', 'src/cpp/skia-builder/build_skia.py', 'build/temp.linux-i686-cpython-311/src/cpp/skia-builder/skia', '--no-sync-deps']' returned non-zero exit status 1.
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
ERROR: Failed building wheel for skia-pathops
Failed to build skia-pathops
ERROR: Could not build wheels for skia-pathops, which is required to install pyproject.toml-based projects
looks like the https://github.com/fonttools/skia-builder that we use to build the libskia does not support 32-bit Linux (i686). I'm afraid I don't know how to help with this.
Is there a reason you can't use the 64-bit version of Python, for which we do already publish pre-compiled wheels?