spleeter
spleeter copied to clipboard
[Bug] Fail to install (with python 3.10.13)
- [ x] I didn't find a similar issue already open.
- [ x] I read the documentation (README AND Wiki)
- [ x] I have installed FFMpeg
- [ x] My problem is related to Spleeter only, not a derivative product (such as Webapplication, or GUI provided by others)
Description
Fail to install spleeter on OpenBSD 7.3 with python 3.10.13
Step to reproduce
- Installed using
doas pip install spleeter
- Run as
user
- Got
RuntimeError: Running cythonize failed!
error
Output
$ doas pip install spleeter
Collecting spleeter
Using cached spleeter-2.4.0-py3-none-any.whl.metadata (10 kB)
Collecting ffmpeg-python<0.3.0,>=0.2.0 (from spleeter)
Using cached ffmpeg_python-0.2.0-py3-none-any.whl (25 kB)
Collecting httpx<0.20.0,>=0.19.0 (from httpx[http2]<0.20.0,>=0.19.0->spleeter)
Using cached httpx-0.19.0-py3-none-any.whl (77 kB)
Collecting norbert<0.3.0,>=0.2.1 (from spleeter)
Using cached norbert-0.2.1-py2.py3-none-any.whl (11 kB)
Collecting pandas<2.0.0,>=1.3.0 (from spleeter)
Using cached pandas-1.5.3.tar.gz (5.2 MB)
Installing build dependencies ... done
Getting requirements to build wheel ... done
Preparing metadata (pyproject.toml) ... done
INFO: pip is looking at multiple versions of spleeter to determine which version is compatible with other requirements. This could take a while.
Collecting spleeter
Using cached spleeter-2.3.2-py3-none-any.whl (51 kB)
Collecting librosa<0.9.0,>=0.8.0 (from spleeter)
Using cached librosa-0.8.1-py3-none-any.whl (203 kB)
Collecting llvmlite<0.39.0,>=0.38.0 (from spleeter)
Using cached llvmlite-0.38.1.tar.gz (129 kB)
Installing build dependencies ... done
Getting requirements to build wheel ... done
Preparing metadata (pyproject.toml) ... done
Requirement already satisfied: numpy<2.0.0,>=1.19.2 in /usr/local/lib/python3.10/site-packages (from spleeter) (1.24.1)
Collecting protobuf<4.0.0,>=3.19.4 (from spleeter)
Using cached protobuf-3.20.3-py2.py3-none-any.whl (162 kB)
Collecting spleeter
Using cached spleeter-2.1.0-py3-none-any.whl (50 kB)
Collecting httpx<0.17.0,>=0.16.1 (from httpx[http2]<0.17.0,>=0.16.1->spleeter)
Using cached httpx-0.16.1-py3-none-any.whl (65 kB)
Collecting librosa==0.8.0 (from spleeter)
Using cached librosa-0.8.0.tar.gz (183 kB)
Installing build dependencies ... done
Getting requirements to build wheel ... done
Preparing metadata (pyproject.toml) ... done
Collecting numpy<1.19.0,>=1.16.0 (from spleeter)
Using cached numpy-1.18.5.zip (5.4 MB)
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
╰─> [54 lines of output]
Running from numpy source directory.
<string>:461: UserWarning: Unrecognized setuptools command, proceeding with generating Cython sources and expanding templates
/tmp/pip-install-160agpme/numpy_c7f3ff26f1da4e2d8168426e85d6169b/tools/cythonize.py:75: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead.
required_version = LooseVersion('0.29.14')
/tmp/pip-install-160agpme/numpy_c7f3ff26f1da4e2d8168426e85d6169b/tools/cythonize.py:77: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead.
if LooseVersion(cython_version) < required_version:
Error compiling Cython file:
------------------------------------------------------------
...
for i in range(1, RK_STATE_LEN):
self.rng_state.key[i] = val[i]
self.rng_state.pos = i
self._bitgen.state = &self.rng_state
self._bitgen.next_uint64 = &mt19937_uint64
^
------------------------------------------------------------
_mt19937.pyx:138:35: Cannot assign type 'uint64_t (*)(void *) except? -1 nogil' to 'uint64_t (*)(void *) noexcept nogil'. Exception values are incompatible. Suggest adding 'noexcept' to type 'uint64_t (void *) except? -1 nogil'.
Processing numpy/random/_bounded_integers.pxd.in
Processing numpy/random/_mt19937.pyx
Traceback (most recent call last):
File "/tmp/pip-install-160agpme/numpy_c7f3ff26f1da4e2d8168426e85d6169b/tools/cythonize.py", line 238, in <module>
main()
File "/tmp/pip-install-160agpme/numpy_c7f3ff26f1da4e2d8168426e85d6169b/tools/cythonize.py", line 234, in main
find_process_files(root_dir)
File "/tmp/pip-install-160agpme/numpy_c7f3ff26f1da4e2d8168426e85d6169b/tools/cythonize.py", line 225, in find_process_files
process(root_dir, fromfile, tofile, function, hash_db)
File "/tmp/pip-install-160agpme/numpy_c7f3ff26f1da4e2d8168426e85d6169b/tools/cythonize.py", line 191, in process
processor_function(fromfile, tofile)
File "/tmp/pip-install-160agpme/numpy_c7f3ff26f1da4e2d8168426e85d6169b/tools/cythonize.py", line 80, in process_pyx
subprocess.check_call(
File "/usr/local/lib/python3.10/subprocess.py", line 369, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['/usr/local/bin/python3.10', '-m', 'cython', '-3', '--fast-fail', '-o', '_mt19937.c', '_mt19937.pyx']' returned non-zero exit status 1.
Cythonizing sources
Traceback (most recent call last):
File "/usr/local/lib/python3.10/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
main()
File "/usr/local/lib/python3.10/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main
json_out['return_val'] = hook(**hook_input['kwargs'])
File "/usr/local/lib/python3.10/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 "/tmp/pip-build-env-ofqlbmfo/overlay/lib/python3.10/site-packages/setuptools/build_meta.py", line 366, in prepare_metadata_for_build_wheel
self.run_setup()
File "/tmp/pip-build-env-ofqlbmfo/overlay/lib/python3.10/site-packages/setuptools/build_meta.py", line 480, in run_setup
super(_BuildMetaLegacyBackend, self).run_setup(setup_script=setup_script)
File "/tmp/pip-build-env-ofqlbmfo/overlay/lib/python3.10/site-packages/setuptools/build_meta.py", line 311, in run_setup
exec(code, locals())
File "<string>", line 488, in <module>
File "<string>", line 469, in setup_package
File "<string>", line 275, in generate_cython
RuntimeError: Running cythonize failed!
[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.
Environment
OS | OpenBSD 7.3 |
Installation type | pip |
RAM available | 23Go |
Hardware spec | GPU : none CPU : Intel i5 |
Additional context
Same problem here. I couldn't figure it out, but I got it working on Docker.
After some trying it seems like the latest release of Spleeter on PyPI depends on a version of numpy that will not compile with Python 3.10. It looks like this was fixed in commit https://github.com/deezer/spleeter/commit/e46aebfad94cd4bbf073952a770886809b7d9e2d but it has not been included in a release of Spleeter on PyPI (yet). It appears to install fine using Python 3.8 (which you can use pyenv
to install in a convenient way).
Same problem here
@joyboy67 the "invalid" tag is to say that this issue is invalid. Please remove it. You've basically labeled this as an erroneous report and asked devs to not look into it.
This most certainly is a valid issue that I too am encountering.