ddangelov / Top2Vec

Top2Vec learns jointly embedded topic, document and word vectors.
BSD 3-Clause "New" or "Revised" License
2.92k stars 374 forks source link

How to resolve " ERROR: Failed building wheel for llvmlite" while installing top2vec in docker alpine image with Python 3.9.12? #322

Closed davood-hadiannejad closed 1 year ago

davood-hadiannejad commented 1 year ago

Requirement already satisfied: requests in /usr/local/lib/python3.9/site-packages (from simpful->pyfume->FuzzyTM>=0.4.0->gensim->top2vec==1.0.16) (2.28.2) Requirement already satisfied: urllib3<1.27,>=1.21.1 in /usr/local/lib/python3.9/site-packages (from requests->simpful->pyfume->FuzzyTM>=0.4.0->gensim->top2vec==1.0.16) (1.26.14) Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.9/site-packages (from requests->simpful->pyfume->FuzzyTM>=0.4.0->gensim->top2vec==1.0.16) (2022.12.7) Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.9/site-packages (from requests->simpful->pyfume->FuzzyTM>=0.4.0->gensim->top2vec==1.0.16) (3.4) Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.9/site-packages (from requests->simpful->pyfume->FuzzyTM>=0.4.0->gensim->top2vec==1.0.16) (3.0.1) Building wheels for collected packages: llvmlite Building wheel for llvmlite (setup.py) ... error error: subprocess-exited-with-error

× python setup.py bdist_wheel did not run successfully. │ exit code: 1 ╰─> [11 lines of output] running bdist_wheel /usr/local/bin/python /tmp/pip-install-vblozaxw/llvmlite_a3f84bd6149f4c0484cc84aafa943e86/ffi/build.py LLVM version... Traceback (most recent call last): File "/tmp/pip-install-vblozaxw/llvmlite_a3f84bd6149f4c0484cc84aafa943e86/ffi/build.py", line 226, in main() File "/tmp/pip-install-vblozaxw/llvmlite_a3f84bd6149f4c0484cc84aafa943e86/ffi/build.py", line 216, in main main_posix('linux', '.so') File "/tmp/pip-install-vblozaxw/llvmlite_a3f84bd6149f4c0484cc84aafa943e86/ffi/build.py", line 135, in main_posix raise RuntimeError(msg) from None RuntimeError: Could not find a llvm-config binary. There are a number of reasons this could occur, please see: https://llvmlite.readthedocs.io/en/latest/admin-guide/install.html#using-pip for help. error: command '/usr/local/bin/python' failed with exit code 1 [end of output]

note: This error originates from a subprocess, and is likely not a problem with pip. ERROR: Failed building wheel for llvmlite Running setup.py clean for llvmlite Failed to build llvmlite Installing collected packages: tqdm, threadpoolctl, smart-open, pillow, numpy, llvmlite, joblib, cython, scipy, numba, wordcloud, simpful, scikit-learn, miniful, pynndescent, hdbscan, fst-pso, umap-learn, pyfume, FuzzyTM, gensim, top2vec Attempting uninstall: numpy Found existing installation: numpy 1.24.2 Uninstalling numpy-1.24.2: Successfully uninstalled numpy-1.24.2 Running setup.py install for llvmlite ... error error: subprocess-exited-with-error

× Running setup.py install for llvmlite did not run successfully. │ exit code: 1 ╰─> [14 lines of output] running install running build got version from file /tmp/pip-install-vblozaxw/llvmlite_a3f84bd6149f4c0484cc84aafa943e86/llvmlite/_version.py {'version': '0.39.1', 'full': '31f808fa7a5796bb8d4b14e8a9e27c6dd15f2b6c'} running build_ext /usr/local/bin/python /tmp/pip-install-vblozaxw/llvmlite_a3f84bd6149f4c0484cc84aafa943e86/ffi/build.py LLVM version... Traceback (most recent call last): File "/tmp/pip-install-vblozaxw/llvmlite_a3f84bd6149f4c0484cc84aafa943e86/ffi/build.py", line 226, in main() File "/tmp/pip-install-vblozaxw/llvmlite_a3f84bd6149f4c0484cc84aafa943e86/ffi/build.py", line 216, in main main_posix('linux', '.so') File "/tmp/pip-install-vblozaxw/llvmlite_a3f84bd6149f4c0484cc84aafa943e86/ffi/build.py", line 135, in main_posix raise RuntimeError(msg) from None RuntimeError: Could not find a llvm-config binary. There are a number of reasons this could occur, please see: https://llvmlite.readthedocs.io/en/latest/admin-guide/install.html#using-pip for help. error: command '/usr/local/bin/python' failed with exit code 1 [end of output]

note: This error originates from a subprocess, and is likely not a problem with pip. error: legacy-install-failure

× Encountered error while trying to install package. ╰─> llvmlite

davood-hadiannejad commented 1 year ago

I changed in my Dockerfile the base image from FROM python:3.9.12-alpine (based on Alpine Linux.) to FROM python:3.9.12 ( based on Debian). And now it is working.