anibali / pywebp

Python bindings for WebP
MIT License
74 stars 24 forks source link

Error while installing via pip #39

Closed xmalter closed 1 year ago

xmalter commented 1 year ago

MacOS Ventura

> pip3 install webp==0.1.3
Defaulting to user installation because normal site-packages is not writeable
Collecting webp==0.1.3
  Using cached webp-0.1.3.tar.gz (10 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... error
  error: subprocess-exited-with-error

  × Preparing metadata (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [33 lines of output]
      Traceback (most recent call last):
        File "/Users/malter/Library/Python/3.9/lib/python/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
          main()
        File "/Users/malter/Library/Python/3.9/lib/python/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main
          json_out['return_val'] = hook(**hook_input['kwargs'])
        File "/Users/malter/Library/Python/3.9/lib/python/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 149, in prepare_metadata_for_build_wheel
          return hook(metadata_directory, config_settings)
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-0h3fl_1z/overlay/lib/python3.9/site-packages/setuptools/build_meta.py", line 380, in prepare_metadata_for_build_wheel
          self.run_setup()
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-0h3fl_1z/overlay/lib/python3.9/site-packages/setuptools/build_meta.py", line 338, in run_setup
          exec(code, locals())
        File "<string>", line 10, in <module>
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-0h3fl_1z/overlay/lib/python3.9/site-packages/setuptools/__init__.py", line 107, in setup
          return distutils.core.setup(**attrs)
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-0h3fl_1z/overlay/lib/python3.9/site-packages/setuptools/_distutils/core.py", line 147, in setup
          _setup_distribution = dist = klass(attrs)
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-0h3fl_1z/overlay/lib/python3.9/site-packages/setuptools/dist.py", line 496, in __init__
          _Distribution.__init__(
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-0h3fl_1z/overlay/lib/python3.9/site-packages/setuptools/_distutils/dist.py", line 283, in __init__
          self.finalize_options()
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-0h3fl_1z/overlay/lib/python3.9/site-packages/setuptools/dist.py", line 935, in finalize_options
          ep(self)
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-0h3fl_1z/overlay/lib/python3.9/site-packages/setuptools/dist.py", line 955, in _finalize_setup_keywords
          ep.load()(self, ep.name, value)
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-0h3fl_1z/overlay/lib/python3.9/site-packages/cffi/setuptools_ext.py", line 219, in cffi_modules
          add_cffi_module(dist, cffi_module)
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-0h3fl_1z/overlay/lib/python3.9/site-packages/cffi/setuptools_ext.py", line 49, in add_cffi_module
          execfile(build_file_name, mod_vars)
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-0h3fl_1z/overlay/lib/python3.9/site-packages/cffi/setuptools_ext.py", line 25, in execfile
          exec(code, glob, glob)
        File "webp_build/builder.py", line 7, in <module>
          from conans.client import conan_api
      ImportError: cannot import name 'conan_api' from 'conans.client' (/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-0h3fl_1z/overlay/lib/python3.9/site-packages/conans/client/__init__.py)
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

× Encountered error while generating package metadata.
╰─> See above for output.

note: This is an issue with the package mentioned above, not pip.
hint: See above for details
anibali commented 1 year ago

0.1.3 is an old version, and packaging issues have been fixed recently. Please try installing 0.1.5.

memsharded commented 1 year ago

It seems a similar issue is being reported in https://github.com/conan-io/conan/issues/14125 (and the solution would be the same, upgrade to 0.1.5, thanks!)

karambaq commented 1 year ago

I have a problem with 0.1.5 too unfortunately

❯ pip3 list | grep webp
webp                           0.1.5
❯ python3
Python 3.9.6 (default, May  7 2023, 23:32:44)
[Clang 14.0.3 (clang-1403.0.22.14.1)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import webp
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/user/Library/Python/3.9/lib/python/site-packages/webp/__init__.py", line 6, in <module>
    from _webp import ffi, lib
ModuleNotFoundError: No module named '_webp'
anibali commented 1 year ago

My guess is that it's missing the prebuilt binary wheel (probably due to MacOS version/not being x86) and then failing to build the .so file. Can you search to see whether you have the file _webp.abi3.so somewhere in /Users/user/Library/Python/3.9/lib/python/site-packages?

anibali commented 1 year ago

Wait, sorry---0.1.5 is not the latest version and is known to be broken. Ensure that you use the very latest version, which is 0.1.6. Sorry for quoting the wrong version number earlier.

karambaq commented 1 year ago

Can't install 0.1.6 too:

❯ pip3 install webp==0.1.6
Defaulting to user installation because normal site-packages is not writeable
Collecting webp==0.1.6
  Using cached webp-0.1.6.tar.gz (13 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Requirement already satisfied: Pillow>=4.0.0 in /Users/malter/Library/Python/3.9/lib/python/site-packages (from webp==0.1.6) (9.2.0)
Requirement already satisfied: cffi>=1.0.0 in /Users/malter/Library/Python/3.9/lib/python/site-packages (from webp==0.1.6) (1.15.1)
Requirement already satisfied: numpy>=1.0.0 in /Users/malter/Library/Python/3.9/lib/python/site-packages (from webp==0.1.6) (1.25.0)
Requirement already satisfied: pycparser in /Users/malter/Library/Python/3.9/lib/python/site-packages (from cffi>=1.0.0->webp==0.1.6) (2.21)
Building wheels for collected packages: webp
  Building wheel for webp (pyproject.toml) ... error
  error: subprocess-exited-with-error

  × Building wheel for webp (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [227 lines of output]
      A setup.py file already exists. Using it.
      genregxp 0 0|[1-9]\d*
      genregxp 1 [0-9]+
      genregxp 2 \d*[a-zA-Z-][a-zA-Z0-9-]*
      genregxp 3 (0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)
      genregxp 4 ([0-9]+)\.([0-9]+)\.([0-9]+)
      genregxp 5 (?:0|[1-9]\d*|\d*[a-zA-Z-][a-zA-Z0-9-]*)
      genregxp 6 (?:[0-9]+|\d*[a-zA-Z-][a-zA-Z0-9-]*)
      genregxp 7 (?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][a-zA-Z0-9-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][a-zA-Z0-9-]*))*))
      genregxp 8 (?:-?((?:[0-9]+|\d*[a-zA-Z-][a-zA-Z0-9-]*)(?:\.(?:[0-9]+|\d*[a-zA-Z-][a-zA-Z0-9-]*))*))
      genregxp 9 [0-9A-Za-z-]+
      genregxp 10 (?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))
      genregxp 11 ^v?(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][a-zA-Z0-9-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][a-zA-Z0-9-]*))*))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?$
      genregxp 12 ^[v=\s]*([0-9]+)\.([0-9]+)\.([0-9]+)(?:-?((?:[0-9]+|\d*[a-zA-Z-][a-zA-Z0-9-]*)(?:\.(?:[0-9]+|\d*[a-zA-Z-][a-zA-Z0-9-]*))*))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?$
      genregxp 13 ((?:<|>)?=?)
      genregxp 14 [0-9]+|x|X|\*
      genregxp 15 0|[1-9]\d*|x|X|\*
      genregxp 16 [v=\s]*(0|[1-9]\d*|x|X|\*)(?:\.(0|[1-9]\d*|x|X|\*)(?:\.(0|[1-9]\d*|x|X|\*)(?:(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][a-zA-Z0-9-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][a-zA-Z0-9-]*))*)))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?)?)?
      genregxp 17 [v=\s]*([0-9]+|x|X|\*)(?:\.([0-9]+|x|X|\*)(?:\.([0-9]+|x|X|\*)(?:(?:-?((?:[0-9]+|\d*[a-zA-Z-][a-zA-Z0-9-]*)(?:\.(?:[0-9]+|\d*[a-zA-Z-][a-zA-Z0-9-]*))*)))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?)?)?
      genregxp 18 ^((?:<|>)?=?)\s*[v=\s]*(0|[1-9]\d*|x|X|\*)(?:\.(0|[1-9]\d*|x|X|\*)(?:\.(0|[1-9]\d*|x|X|\*)(?:(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][a-zA-Z0-9-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][a-zA-Z0-9-]*))*)))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?)?)?$
      genregxp 19 ^((?:<|>)?=?)\s*[v=\s]*([0-9]+|x|X|\*)(?:\.([0-9]+|x|X|\*)(?:\.([0-9]+|x|X|\*)(?:(?:-?((?:[0-9]+|\d*[a-zA-Z-][a-zA-Z0-9-]*)(?:\.(?:[0-9]+|\d*[a-zA-Z-][a-zA-Z0-9-]*))*)))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?)?)?$
      genregxp 20 (?:~>?)
      genregxp 21 (\s*)(?:~>?)\s+
      genregxp 22 ^(?:~>?)[v=\s]*(0|[1-9]\d*|x|X|\*)(?:\.(0|[1-9]\d*|x|X|\*)(?:\.(0|[1-9]\d*|x|X|\*)(?:(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][a-zA-Z0-9-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][a-zA-Z0-9-]*))*)))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?)?)?$
      genregxp 23 ^(?:~>?)[v=\s]*([0-9]+|x|X|\*)(?:\.([0-9]+|x|X|\*)(?:\.([0-9]+|x|X|\*)(?:(?:-?((?:[0-9]+|\d*[a-zA-Z-][a-zA-Z0-9-]*)(?:\.(?:[0-9]+|\d*[a-zA-Z-][a-zA-Z0-9-]*))*)))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?)?)?$
      genregxp 24 (?:\^)
      genregxp 25 (\s*)(?:\^)\s+
      genregxp 26 ^(?:\^)[v=\s]*(0|[1-9]\d*|x|X|\*)(?:\.(0|[1-9]\d*|x|X|\*)(?:\.(0|[1-9]\d*|x|X|\*)(?:(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][a-zA-Z0-9-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][a-zA-Z0-9-]*))*)))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?)?)?$
      genregxp 27 ^(?:\^)[v=\s]*([0-9]+|x|X|\*)(?:\.([0-9]+|x|X|\*)(?:\.([0-9]+|x|X|\*)(?:(?:-?((?:[0-9]+|\d*[a-zA-Z-][a-zA-Z0-9-]*)(?:\.(?:[0-9]+|\d*[a-zA-Z-][a-zA-Z0-9-]*))*)))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?)?)?$
      genregxp 28 ^((?:<|>)?=?)\s*([v=\s]*([0-9]+)\.([0-9]+)\.([0-9]+)(?:-?((?:[0-9]+|\d*[a-zA-Z-][a-zA-Z0-9-]*)(?:\.(?:[0-9]+|\d*[a-zA-Z-][a-zA-Z0-9-]*))*))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?)$|^$
      genregxp 29 ^((?:<|>)?=?)\s*(v?(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][a-zA-Z0-9-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][a-zA-Z0-9-]*))*))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?)$|^$
      genregxp 30 (\s*)((?:<|>)?=?)\s*([v=\s]*([0-9]+)\.([0-9]+)\.([0-9]+)(?:-?((?:[0-9]+|\d*[a-zA-Z-][a-zA-Z0-9-]*)(?:\.(?:[0-9]+|\d*[a-zA-Z-][a-zA-Z0-9-]*))*))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?|[v=\s]*(0|[1-9]\d*|x|X|\*)(?:\.(0|[1-9]\d*|x|X|\*)(?:\.(0|[1-9]\d*|x|X|\*)(?:(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][a-zA-Z0-9-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][a-zA-Z0-9-]*))*)))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?)?)?)
      genregxp 31 ^\s*([v=\s]*(0|[1-9]\d*|x|X|\*)(?:\.(0|[1-9]\d*|x|X|\*)(?:\.(0|[1-9]\d*|x|X|\*)(?:(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][a-zA-Z0-9-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][a-zA-Z0-9-]*))*)))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?)?)?)\s+-\s+([v=\s]*(0|[1-9]\d*|x|X|\*)(?:\.(0|[1-9]\d*|x|X|\*)(?:\.(0|[1-9]\d*|x|X|\*)(?:(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][a-zA-Z0-9-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][a-zA-Z0-9-]*))*)))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?)?)?)\s*$
      genregxp 32 ^\s*([v=\s]*([0-9]+|x|X|\*)(?:\.([0-9]+|x|X|\*)(?:\.([0-9]+|x|X|\*)(?:(?:-?((?:[0-9]+|\d*[a-zA-Z-][a-zA-Z0-9-]*)(?:\.(?:[0-9]+|\d*[a-zA-Z-][a-zA-Z0-9-]*))*)))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?)?)?)\s+-\s+([v=\s]*([0-9]+|x|X|\*)(?:\.([0-9]+|x|X|\*)(?:\.([0-9]+|x|X|\*)(?:(?:-?((?:[0-9]+|\d*[a-zA-Z-][a-zA-Z0-9-]*)(?:\.(?:[0-9]+|\d*[a-zA-Z-][a-zA-Z0-9-]*))*)))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?)?)?)\s*$
      genregxp 33 (<|>)?=?\s*\*
      genregxp 34 v?(0|[1-9]\d*)(?:\.(0|[1-9]\d*))?(?:-?((?:[0-9]+|\d*[a-zA-Z-][a-zA-Z0-9-]*)(?:\.(?:[0-9]+|\d*[a-zA-Z-][a-zA-Z0-9-]*))*))?
      platform.architecture: ('64bit', '')
      platform.machine: arm64
      Configuration:
      [settings]
      arch=armv8
      arch_build=armv8
      build_type=Release
      compiler=apple-clang
      compiler.libcxx=libc++
      compiler.version=14
      os=Macos
      os_build=Macos
      [options]
      [build_requires]
      [env]

      range >=1.53.0 True
      hyphen replace >=1.53.0
      comparator trim >=1.53.0, re.compile('(\\s*)((?:<|>)?=?)\\s*([v=\\s]*([0-9]+)\\.([0-9]+)\\.([0-9]+)(?:-?((?:[0-9]+|\\d*[a-zA-Z-][a-zA-Z0-9-]*)(?:\\.(?:[0-9]+|\\d*[a-zA-Z-][a-zA-Z0-9-]*))*))?(?:\\+([0-9A-Za-z-]+(?:\\.[0-9A-Za-z-]+)*))?|[v, re.MULTILINE)
      comp >=1.53.0
      caret >=1.53.0
      tildes >=1.53.0
      replaceXRanges >=1.53.0 True
      xrange >=1.53.0 >=1.53.0 >= 1 53 0 None
      xrange gtlt=>= any_x=False
      xRange return >=1.53.0
      xrange >=1.53.0
      replaceStars >=1.53.0 True
      stars >=1.53.0
      comparator: >=1.53.0 True
      parse comp=>=1.53.0
      SemVer 1.53.0, True
      Range format >=1.53.0
      SemVer 1.60.1, True
      Comparator, test 1.60.1, True
      cmp: >=
      SemVer.compare 1.60.1 True 1.53.0
      compare result 1
      libwebp/1.0.3: WARN: Package binary is corrupted, removing: fe7ea23bf45e7a673e43224b8a1e0eda39ef569b
      Starting new HTTPS connection (1): center.conan.io:443
      https://center.conan.io:443 "GET /v1/ping HTTP/1.1" 200 0
      https://center.conan.io:443 "GET /v1/conans/libwebp/1.0.3/_/_/packages/fe7ea23bf45e7a673e43224b8a1e0eda39ef569b/download_urls HTTP/1.1" 404 None
      conanfile.txt: Installing package
      Requirements
          libwebp/1.0.3 from 'conancenter' - Cache
      Packages
          libwebp/1.0.3:fe7ea23bf45e7a673e43224b8a1e0eda39ef569b - Build

      Installing (downloading, building) binaries...
      libwebp/1.0.3: WARN: Build folder is dirty, removing it: /Users/malter/.conan/data/libwebp/1.0.3/_/_/build/fe7ea23bf45e7a673e43224b8a1e0eda39ef569b
      libwebp/1.0.3: Copying sources to build folder
      libwebp/1.0.3: Building your package in /Users/malter/.conan/data/libwebp/1.0.3/_/_/build/fe7ea23bf45e7a673e43224b8a1e0eda39ef569b
      libwebp/1.0.3: Generator txt created conanbuildinfo.txt
      libwebp/1.0.3: Calling generate()
      libwebp/1.0.3: WARN: Using the new toolchains and generators without specifying a build profile (e.g: -pr:b=default) is discouraged and might cause failures and unexpected behavior
      libwebp/1.0.3: Preset 'release' added to CMakePresets.json. Invoke it manually using 'cmake --preset release'
      libwebp/1.0.3: If your CMake version is not compatible with CMakePresets (<3.19) call cmake like: 'cmake <path> -G "Unix Makefiles" -DCMAKE_TOOLCHAIN_FILE=/Users/malter/.conan/data/libwebp/1.0.3/_/_/build/fe7ea23bf45e7a673e43224b8a1e0eda39ef569b/build/Release/generators/conan_toolchain.cmake -DCMAKE_POLICY_DEFAULT_CMP0091=NEW -DCMAKE_BUILD_TYPE=Release'
      libwebp/1.0.3: Aggregating env generators
      libwebp/1.0.3: Calling build()
      libwebp/1.0.3: Apply patch (portability): define WEBP_EXTERN for windows shared build
      libwebp/1.0.3: /Users/malter/.conan/data/libwebp/1.0.3/_/_/build/fe7ea23bf45e7a673e43224b8a1e0eda39ef569b/patches/1.0.3-0001-fix-dll-export.patch: reading /Users/malter/.conan/data/libwebp/1.0.3/_/_/build/fe7ea23bf45e7a673e43224b8a1e0eda39ef569b/patches/1.0.3-0001-fix-dll-export.patch
      reading /Users/malter/.conan/data/libwebp/1.0.3/_/_/build/fe7ea23bf45e7a673e43224b8a1e0eda39ef569b/patches/1.0.3-0001-fix-dll-export.patch
      libwebp/1.0.3: /Users/malter/.conan/data/libwebp/1.0.3/_/_/build/fe7ea23bf45e7a673e43224b8a1e0eda39ef569b/patches/1.0.3-0001-fix-dll-export.patch: total files: 1  total hunks: 1
      total files: 1  total hunks: 1
      libwebp/1.0.3: /Users/malter/.conan/data/libwebp/1.0.3/_/_/build/fe7ea23bf45e7a673e43224b8a1e0eda39ef569b/patches/1.0.3-0001-fix-dll-export.patch: stripping a/ and b/ prefixes
      stripping a/ and b/ prefixes
      libwebp/1.0.3: /Users/malter/.conan/data/libwebp/1.0.3/_/_/build/fe7ea23bf45e7a673e43224b8a1e0eda39ef569b/patches/1.0.3-0001-fix-dll-export.patch: processing 1/1:   b'src/webp/types.h'
      processing 1/1:      b'src/webp/types.h'
      libwebp/1.0.3: /Users/malter/.conan/data/libwebp/1.0.3/_/_/build/fe7ea23bf45e7a673e43224b8a1e0eda39ef569b/patches/1.0.3-0001-fix-dll-export.patch:  hunk no.1 for file b'src/webp/types.h'  -- is ready to be patched
       hunk no.1 for file b'src/webp/types.h'  -- is ready to be patched
      libwebp/1.0.3: /Users/malter/.conan/data/libwebp/1.0.3/_/_/build/fe7ea23bf45e7a673e43224b8a1e0eda39ef569b/patches/1.0.3-0001-fix-dll-export.patch: processing target file b'src/webp/types.h'
      processing target file b'src/webp/types.h'
      libwebp/1.0.3: /Users/malter/.conan/data/libwebp/1.0.3/_/_/build/fe7ea23bf45e7a673e43224b8a1e0eda39ef569b/patches/1.0.3-0001-fix-dll-export.patch: hunk 1
      hunk 1
      libwebp/1.0.3: /Users/malter/.conan/data/libwebp/1.0.3/_/_/build/fe7ea23bf45e7a673e43224b8a1e0eda39ef569b/patches/1.0.3-0001-fix-dll-export.patch: successfully patched 1/1:         b'src/webp/types.h'
      successfully patched 1/1:    b'src/webp/types.h'
      libwebp/1.0.3: Apply patch (conan): always build libwebpmux
      libwebp/1.0.3: /Users/malter/.conan/data/libwebp/1.0.3/_/_/build/fe7ea23bf45e7a673e43224b8a1e0eda39ef569b/patches/1.0.3-0002-build-libwebpmux.patch: reading /Users/malter/.conan/data/libwebp/1.0.3/_/_/build/fe7ea23bf45e7a673e43224b8a1e0eda39ef569b/patches/1.0.3-0002-build-libwebpmux.patch
      reading /Users/malter/.conan/data/libwebp/1.0.3/_/_/build/fe7ea23bf45e7a673e43224b8a1e0eda39ef569b/patches/1.0.3-0002-build-libwebpmux.patch
      libwebp/1.0.3: /Users/malter/.conan/data/libwebp/1.0.3/_/_/build/fe7ea23bf45e7a673e43224b8a1e0eda39ef569b/patches/1.0.3-0002-build-libwebpmux.patch: total files: 1  total hunks: 1
      total files: 1  total hunks: 1
      libwebp/1.0.3: /Users/malter/.conan/data/libwebp/1.0.3/_/_/build/fe7ea23bf45e7a673e43224b8a1e0eda39ef569b/patches/1.0.3-0002-build-libwebpmux.patch: broken patch from Google Code, stripping prefixes..
      broken patch from Google Code, stripping prefixes..
      libwebp/1.0.3: /Users/malter/.conan/data/libwebp/1.0.3/_/_/build/fe7ea23bf45e7a673e43224b8a1e0eda39ef569b/patches/1.0.3-0002-build-libwebpmux.patch:    b'CMakeLists.txt'
         b'CMakeLists.txt'
      libwebp/1.0.3: /Users/malter/.conan/data/libwebp/1.0.3/_/_/build/fe7ea23bf45e7a673e43224b8a1e0eda39ef569b/patches/1.0.3-0002-build-libwebpmux.patch:    b'CMakeLists.txt'
         b'CMakeLists.txt'
      libwebp/1.0.3: /Users/malter/.conan/data/libwebp/1.0.3/_/_/build/fe7ea23bf45e7a673e43224b8a1e0eda39ef569b/patches/1.0.3-0002-build-libwebpmux.patch: processing 1/1:         b'CMakeLists.txt'
      processing 1/1:      b'CMakeLists.txt'
      libwebp/1.0.3: /Users/malter/.conan/data/libwebp/1.0.3/_/_/build/fe7ea23bf45e7a673e43224b8a1e0eda39ef569b/patches/1.0.3-0002-build-libwebpmux.patch:  hunk no.1 for file b'CMakeLists.txt'  -- is ready to be patched
       hunk no.1 for file b'CMakeLists.txt'  -- is ready to be patched
      libwebp/1.0.3: /Users/malter/.conan/data/libwebp/1.0.3/_/_/build/fe7ea23bf45e7a673e43224b8a1e0eda39ef569b/patches/1.0.3-0002-build-libwebpmux.patch: processing target file b'CMakeLists.txt'
      processing target file b'CMakeLists.txt'
      libwebp/1.0.3: /Users/malter/.conan/data/libwebp/1.0.3/_/_/build/fe7ea23bf45e7a673e43224b8a1e0eda39ef569b/patches/1.0.3-0002-build-libwebpmux.patch: hunk 1
      hunk 1
      libwebp/1.0.3: /Users/malter/.conan/data/libwebp/1.0.3/_/_/build/fe7ea23bf45e7a673e43224b8a1e0eda39ef569b/patches/1.0.3-0002-build-libwebpmux.patch: successfully patched 1/1:       b'CMakeLists.txt'
      successfully patched 1/1:    b'CMakeLists.txt'
      libwebp/1.0.3: CMake command: cmake -G "Unix Makefiles" -DCMAKE_TOOLCHAIN_FILE="/Users/malter/.conan/data/libwebp/1.0.3/_/_/build/fe7ea23bf45e7a673e43224b8a1e0eda39ef569b/build/Release/generators/conan_toolchain.cmake" -DCMAKE_INSTALL_PREFIX="/Users/malter/.conan/data/libwebp/1.0.3/_/_/package/fe7ea23bf45e7a673e43224b8a1e0eda39ef569b" -DCMAKE_POLICY_DEFAULT_CMP0091="NEW" -DCMAKE_BUILD_TYPE="Release" "/Users/malter/.conan/data/libwebp/1.0.3/_/_/build/fe7ea23bf45e7a673e43224b8a1e0eda39ef569b/src"
      /bin/sh: cmake: command not found
      libwebp/1.0.3:
      libwebp/1.0.3: ERROR: Package 'fe7ea23bf45e7a673e43224b8a1e0eda39ef569b' build failed
      libwebp/1.0.3: WARN: Build folder /Users/malter/.conan/data/libwebp/1.0.3/_/_/build/fe7ea23bf45e7a673e43224b8a1e0eda39ef569b/build/Release
      Traceback (most recent call last):
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-vb2i3lr9/overlay/lib/python3.9/site-packages/conans/errors.py", line 34, in conanfile_exception_formatter
          yield
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-vb2i3lr9/overlay/lib/python3.9/site-packages/conans/client/conanfile/build.py", line 16, in run_build_method
          conanfile.build()
        File "/Users/malter/.conan/data/libwebp/1.0.3/_/_/export/conanfile.py", line 87, in build
          cmake.configure()
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-vb2i3lr9/overlay/lib/python3.9/site-packages/conan/tools/cmake/cmake.py", line 101, in configure
          self._conanfile.run(command)
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-vb2i3lr9/overlay/lib/python3.9/site-packages/conans/model/conan_file.py", line 464, in run
          raise ConanException("Error %d while executing %s" % (retcode, command))
      conans.errors.ConanException: Error 127 while executing cmake -G "Unix Makefiles" -DCMAKE_TOOLCHAIN_FILE="/Users/malter/.conan/data/libwebp/1.0.3/_/_/build/fe7ea23bf45e7a673e43224b8a1e0eda39ef569b/build/Release/generators/conan_toolchain.cmake" -DCMAKE_INSTALL_PREFIX="/Users/malter/.conan/data/libwebp/1.0.3/_/_/package/fe7ea23bf45e7a673e43224b8a1e0eda39ef569b" -DCMAKE_POLICY_DEFAULT_CMP0091="NEW" -DCMAKE_BUILD_TYPE="Release" "/Users/malter/.conan/data/libwebp/1.0.3/_/_/build/fe7ea23bf45e7a673e43224b8a1e0eda39ef569b/src"

      During handling of the above exception, another exception occurred:

      Traceback (most recent call last):
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-install-wqdzgqso/webp_c05b643349994a3e9826c19c8d236296/setup.py", line 31, in <module>
          setup(**setup_kwargs)
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-vb2i3lr9/overlay/lib/python3.9/site-packages/setuptools/__init__.py", line 107, in setup
          return distutils.core.setup(**attrs)
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-vb2i3lr9/overlay/lib/python3.9/site-packages/setuptools/_distutils/core.py", line 147, in setup
          _setup_distribution = dist = klass(attrs)
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-vb2i3lr9/overlay/lib/python3.9/site-packages/setuptools/dist.py", line 486, in __init__
          _Distribution.__init__(
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-vb2i3lr9/overlay/lib/python3.9/site-packages/setuptools/_distutils/dist.py", line 283, in __init__
          self.finalize_options()
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-vb2i3lr9/overlay/lib/python3.9/site-packages/setuptools/dist.py", line 925, in finalize_options
          ep(self)
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-vb2i3lr9/overlay/lib/python3.9/site-packages/setuptools/dist.py", line 945, in _finalize_setup_keywords
          ep.load()(self, ep.name, value)
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-vb2i3lr9/overlay/lib/python3.9/site-packages/cffi/setuptools_ext.py", line 219, in cffi_modules
          add_cffi_module(dist, cffi_module)
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-vb2i3lr9/overlay/lib/python3.9/site-packages/cffi/setuptools_ext.py", line 49, in add_cffi_module
          execfile(build_file_name, mod_vars)
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-vb2i3lr9/overlay/lib/python3.9/site-packages/cffi/setuptools_ext.py", line 25, in execfile
          exec(code, glob, glob)
        File "webp_build/builder.py", line 21, in <module>
          conan.install(path=getcwd(), cwd=tmp_dir, settings=settings, build=['missing'])
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-vb2i3lr9/overlay/lib/python3.9/site-packages/conans/client/conan_api.py", line 93, in wrapper
          return f(api, *args, **kwargs)
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-vb2i3lr9/overlay/lib/python3.9/site-packages/conans/client/conan_api.py", line 609, in install
          deps_install(app=self.app,
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-vb2i3lr9/overlay/lib/python3.9/site-packages/conans/client/manager.py", line 95, in deps_install
          installer.install(deps_graph, remotes, build_modes, update, profile_host, profile_build,
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-vb2i3lr9/overlay/lib/python3.9/site-packages/conans/client/installer.py", line 317, in install
          self._build(nodes_by_level, keep_build, root_node, profile_host, profile_build,
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-vb2i3lr9/overlay/lib/python3.9/site-packages/conans/client/installer.py", line 466, in _build
          self._handle_node_cache(node, keep_build, processed_package_refs, remotes)
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-vb2i3lr9/overlay/lib/python3.9/site-packages/conans/client/installer.py", line 559, in _handle_node_cache
          pref = self._build_package(node, output, keep_build, remotes)
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-vb2i3lr9/overlay/lib/python3.9/site-packages/conans/client/installer.py", line 602, in _build_package
          pref = builder.build_package(node, keep_build, self._recorder, remotes)
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-vb2i3lr9/overlay/lib/python3.9/site-packages/conans/client/installer.py", line 240, in build_package
          raise exc
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-vb2i3lr9/overlay/lib/python3.9/site-packages/conans/client/installer.py", line 227, in build_package
          self._build(conanfile, pref)
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-vb2i3lr9/overlay/lib/python3.9/site-packages/conans/client/installer.py", line 156, in _build
          raise exc
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-vb2i3lr9/overlay/lib/python3.9/site-packages/conans/client/installer.py", line 148, in _build
          run_build_method(conanfile, self._hook_manager, reference=pref.ref, package_id=pref.id)
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-vb2i3lr9/overlay/lib/python3.9/site-packages/conans/client/conanfile/build.py", line 16, in run_build_method
          conanfile.build()
        File "/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.9/lib/python3.9/contextlib.py", line 135, in __exit__
          self.gen.throw(type, value, traceback)
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-vb2i3lr9/overlay/lib/python3.9/site-packages/conans/errors.py", line 44, in conanfile_exception_formatter
          raise ConanExceptionInUserConanfileMethod(msg)
      conans.errors.ConanExceptionInUserConanfileMethod: libwebp/1.0.3: Error in build() method, line 87
          cmake.configure()
          ConanException: Error 127 while executing cmake -G "Unix Makefiles" -DCMAKE_TOOLCHAIN_FILE="/Users/malter/.conan/data/libwebp/1.0.3/_/_/build/fe7ea23bf45e7a673e43224b8a1e0eda39ef569b/build/Release/generators/conan_toolchain.cmake" -DCMAKE_INSTALL_PREFIX="/Users/malter/.conan/data/libwebp/1.0.3/_/_/package/fe7ea23bf45e7a673e43224b8a1e0eda39ef569b" -DCMAKE_POLICY_DEFAULT_CMP0091="NEW" -DCMAKE_BUILD_TYPE="Release" "/Users/malter/.conan/data/libwebp/1.0.3/_/_/build/fe7ea23bf45e7a673e43224b8a1e0eda39ef569b/src"
      Traceback (most recent call last):
        File "/Users/malter/Library/Python/3.9/lib/python/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
          main()
        File "/Users/malter/Library/Python/3.9/lib/python/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main
          json_out['return_val'] = hook(**hook_input['kwargs'])
        File "/Users/malter/Library/Python/3.9/lib/python/site-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 "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-vb2i3lr9/overlay/lib/python3.9/site-packages/poetry/core/masonry/api.py", line 57, in build_wheel
          return WheelBuilder.make_in(
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-vb2i3lr9/overlay/lib/python3.9/site-packages/poetry/core/masonry/builders/wheel.py", line 88, in make_in
          wb.build(target_dir=directory)
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-vb2i3lr9/overlay/lib/python3.9/site-packages/poetry/core/masonry/builders/wheel.py", line 121, in build
          self._build(zip_file)
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-vb2i3lr9/overlay/lib/python3.9/site-packages/poetry/core/masonry/builders/wheel.py", line 182, in _build
          self._run_build_command(setup)
        File "/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-build-env-vb2i3lr9/overlay/lib/python3.9/site-packages/poetry/core/masonry/builders/wheel.py", line 220, in _run_build_command
          subprocess.check_call(
        File "/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.9/lib/python3.9/subprocess.py", line 373, in check_call
          raise CalledProcessError(retcode, cmd)
      subprocess.CalledProcessError: Command '['/Library/Developer/CommandLineTools/usr/bin/python3', '/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-install-wqdzgqso/webp_c05b643349994a3e9826c19c8d236296/setup.py', 'build', '-b', '/private/var/folders/lr/yvn7d23x3cq5kkk1180tf1cc0000gn/T/pip-install-wqdzgqso/webp_c05b643349994a3e9826c19c8d236296/build']' 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 webp
Failed to build webp
ERROR: Could not build wheels for webp, which is required to install pyproject.toml-based projects
memsharded commented 1 year ago

The key error is this line:

/bin/sh: cmake: command not found

You don't have cmake installed. This package to be built from source assumes that the C++ compilers + cmake are installed in the system. ConanCenter typically has pre-compiled binaries for many mainstream configurations, but it seems this one is not covered at the moment, tried to build from source, and not finding some basic C++ tools assumed to be in the system.

karambaq commented 1 year ago

Thanks, 0.1.6 installed and working.

anibali commented 1 year ago

Glad to hear that it works, and thanks for your input @memsharded!

Out of curiousity @karambaq, are you running on Apple silicon (M1/M2)?

memsharded commented 1 year ago

Thanks for the support @anibali

As a hint, for Python users that might not have CMake in their system, it might be useful to add a tool_requires to cmake/... package, so it is resolved as a dependency in case it is needed?

anibali commented 1 year ago

@memsharded I was not aware of that option, I appreciate the hint. So I can just put this into conanfile.txt to guarantee that cmake is available?

[tool_requires]
cmake/[>=3.5]
karambaq commented 1 year ago

@anibali Yes, it's M2.

memsharded commented 1 year ago

The problem of putting it in the conanfile.txt is that that is intended for the current project build only, not for dependencies, but you are not building C++ in this case. The way it is possible to apply it to dependencies is:

anibali commented 1 year ago

Oh I see. Is it correct that it should be a host profile and not a build profile?

Edit: Thanks for the suggestion but I really can't see a way of getting this to work. I am using the Python API from 1.x (conan.install) and I can't figure out how to pass these settings in. There's a "profile_build=" option, but I have no idea how to properly construct a ProfileData instance.

Edit 2: I think I got it, I just passed the path like profile_names=['/path/to/profile']. I guess it does have to be a host profile...

memsharded commented 1 year ago

Yes, it has to be a "host" profile, yes, the profile_names are the "host" ones.