Feature request: run llvmlite on android
- Dominant language
- Python
- Stars
- 2.3k
- Forks
- 373
- Avg merge
- 3d 2h
- Merged PRs (30d)
- 10
Description
When running ```pip3 install numba```
I get:
```
Requirement already satisfied: numpy<1.21,>=1.17 in /data/data/com.termux/files/usr/lib/python3.9/site-packages (from numba) (1.20.3) Requirement already satisfied: setuptools in /data/data/com.termux/files/usr/lib/python3.9/site-packages (from numba) (56.0.0) Using legacy 'setup.py install' for numba, since package 'wheel' is not installed. Using legacy 'setup.py install' for llvmlite, since package 'wheel' is not installed. Installing collected packages: llvmlite, numba Running setup.py install for llvmlite ... error ERROR: Command errored out with exit status 1: command: /data/data/com.termux/files/usr/bin/python3 -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/data/data/com.termux/files/usr/tmp/pip-install-68rfq9cy/llvmlite_0e6c1f574b22496692e567e14318404e/setup.py'"'"'; __file__='"'"'/data/data/com.termux/files/usr/tmp/pip-install-68rfq9cy/llvmlite_0e6c1f574b22496692e567e14318404e/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /data/data/com.termux/files/usr/tmp/pip-record-0oeyooa3/install-record.txt --single-version-externally-managed --compile --install-headers /data/data/com.termux/files/usr/include/python3.9/llvmlite cwd: /data/data/com.termux/files/usr/tmp/pip-install-68rfq9cy/llvmlite_0e6c1f574b22496692e567e14318404e/ Complete output (14 lines): running install running build got version from file /data/data/com.termux/files/usr/tmp/pip-install-68rfq9cy/llvmlite_0e6c1f574b22496692e567e14318404e/llvmlite/_version.py {'version': '0.37.0', 'full': 'd77dc1bcdb5af040c549f4d1ceeb4db7c8d08718'} running build_ext /data/data/com.termux/files/usr/bin/python3 /data/data/com.termux/files/usr/tmp/pip-install-68rfq9cy/llvmlite_0e6c1f574b22496692e567e14318404e/ffi/build.py LLVM version... Traceback (most recent call last): File "/data/data/com.termux/files/usr/tmp/pip-install-68rfq9cy/llvmlite_0e6c1f574b22496692e567e14318404e/ffi/build.py", line 220, in main() File "/data/data/com.termux/files/usr/tmp/pip-install-68rfq9cy/llvmlite_0e6c1f574b22496692e567e14318404e/ffi/build.py", line 210, in main main_posix('linux', '.so') File "/data/data/com.termux/files/usr/tmp/pip-install-68rfq9cy/llvmlite_0e6c1f574b22496692e567e14318404e/ffi/build.py", line 134, 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 '/data/data/com.termux/files/usr/bin/python3' failed with exit code 1 ---------------------------------------- ERROR: Command errored out with exit status 1: /data/data/com.termux/files/usr/bin/python3 -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/data/data/com.termux/files/usr/tmp/pip-install-68rfq9cy/llvmlite_0e6c1f574b22496692e567e14318404e/setup.py'"'"'; __file__='"'"'/data/data/com.termux/files/usr/tmp/pip-install-68rfq9cy/llvmlite_0e6c1f574b22496692e567e14318404e/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /data/data/com.termux/files/usr/tmp/pip-record-0oeyooa3/install-record.txt --single-version-externally-managed --compile --install-headers /data/data/com.termux/files/usr/include/python3.9/llvmlite Check the logs for full command output.
```
I am using python 3.9.6 and I can't solve this
Contributor guide
No contributing guide indexed for this repository
Research direction
Reproduce `pip3 install numba` in the reported Termux Python 3.9 environment and start with llvmlite/ffi/build.py, where the failure reports that `llvm-config` cannot be found. Review the linked installation guidance and determine the Android build requirements; done means llvmlite installs successfully on Android and allows the requested numba installation to complete.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, python
- Domain
- compilers, mobile-dev
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100