Python Forum
Running Python under Termux on Android tablet
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Running Python under Termux on Android tablet
#1
Question 
Is anyone here running Python using the Termux app on an Android device? I'm able to compile and run Python scripts, and I've been able to install some packages, but I'm having trouble installing Numpy. I'm running v0.1118.0 of Termux under Android v12 on a Samsung Galaxy Tab 6 Lite. Maybe it isn't possible to install Numpy on this hardware, or maybe I'm doing something wrong, I'm not sure. Below are the messages from stdout and stderr after running this command:

> python -m pip install Numpy

Thanks.

stdout output:
Output:
Collecting numpy Using cached numpy-1.24.1.tar.gz (10.9 MB) Installing build dependencies: started Installing build dependencies: finished with status 'done' Getting requirements to build wheel: started Getting requirements to build wheel: finished with status 'done' Preparing metadata (pyproject.toml): started Preparing metadata (pyproject.toml): finished with status 'done' Building wheels for collected packages: numpy Building wheel for numpy (pyproject.toml): started Building wheel for numpy (pyproject.toml): finished with status 'error' Failed to build numpy
stderr output:
Error:
error: subprocess-exited-with-error × Building wheel for numpy (pyproject.toml) did not run successfully. │ exit code: 1 ╰─> [271 lines of output] Running from numpy source directory. setup.py:67: DeprecationWarning: `numpy.distutils` is deprecated since NumPy 1.23.0, as a result of the deprecation of `distutils` itself. It will be removed for Python >= 3.12. For older Python versions it will remain present. It is recommended to use `setuptools < 60.0` for those Python versions. For more details, see: https://numpy.org/devdocs/reference/distutils_status_migration.html import numpy.distutils.command.sdist Processing numpy/random/_bounded_integers.pxd.in Processing numpy/random/_bounded_integers.pyx.in Processing numpy/random/_common.pyx Processing numpy/random/_generator.pyx Processing numpy/random/_mt19937.pyx Processing numpy/random/_pcg64.pyx Processing numpy/random/_philox.pyx Processing numpy/random/_sfc64.pyx Processing numpy/random/bit_generator.pyx Processing numpy/random/mtrand.pyx Cythonizing sources INFO: blas_opt_info: INFO: blas_armpl_info: INFO: customize UnixCCompiler INFO: libraries armpl_lp64_mp not found in ['/data/data/com.termux/files/usr/lib'] INFO: NOT AVAILABLE INFO: INFO: blas_mkl_info: INFO: libraries mkl_rt not found in ['/data/data/com.termux/files/usr/lib'] INFO: NOT AVAILABLE INFO: INFO: blis_info: INFO: libraries blis not found in ['/data/data/com.termux/files/usr/lib'] INFO: NOT AVAILABLE INFO: INFO: openblas_info: INFO: libraries openblas not found in ['/data/data/com.termux/files/usr/lib'] INFO: NOT AVAILABLE INFO: INFO: accelerate_info: INFO: NOT AVAILABLE INFO: INFO: atlas_3_10_blas_threads_info: INFO: Setting PTATLAS=ATLAS INFO: libraries tatlas not found in ['/data/data/com.termux/files/usr/lib'] INFO: NOT AVAILABLE INFO: INFO: atlas_3_10_blas_info: INFO: libraries satlas not found in ['/data/data/com.termux/files/usr/lib'] INFO: NOT AVAILABLE INFO: INFO: atlas_blas_threads_info: INFO: Setting PTATLAS=ATLAS INFO: libraries ptf77blas,ptcblas,atlas not found in ['/data/data/com.termux/files/usr/lib'] INFO: NOT AVAILABLE INFO: INFO: atlas_blas_info: INFO: libraries f77blas,cblas,atlas not found in ['/data/data/com.termux/files/usr/lib'] INFO: NOT AVAILABLE INFO: /data/data/com.termux/files/usr/tmp/pip-install-1f42a2k9/numpy_2b2bb06d68b243208e412c41f84c8c79/numpy/distutils/system_info.py:2077: UserWarning: Optimized (vendor) Blas libraries are not found. Falls back to netlib Blas library which has worse performance. A better performance should be easily gained by switching Blas library. if self._calc_info(blas): INFO: blas_info: INFO: libraries blas not found in ['/data/data/com.termux/files/usr/lib'] INFO: NOT AVAILABLE INFO: /data/data/com.termux/files/usr/tmp/pip-install-1f42a2k9/numpy_2b2bb06d68b243208e412c41f84c8c79/numpy/distutils/system_info.py:2077: UserWarning: Blas (http://www.netlib.org/blas/) libraries not found. Directories to search for the libraries can be specified in the numpy/distutils/site.cfg file (section [blas]) or by setting the BLAS environment variable. if self._calc_info(blas): INFO: blas_src_info: INFO: NOT AVAILABLE INFO: /data/data/com.termux/files/usr/tmp/pip-install-1f42a2k9/numpy_2b2bb06d68b243208e412c41f84c8c79/numpy/distutils/system_info.py:2077: UserWarning: Blas (http://www.netlib.org/blas/) sources not found. Directories to search for the sources can be specified in the numpy/distutils/site.cfg file (section [blas_src]) or by setting the BLAS_SRC environment variable. if self._calc_info(blas): INFO: NOT AVAILABLE INFO: non-existing path in 'numpy/distutils': 'site.cfg' INFO: lapack_opt_info: INFO: lapack_armpl_info: INFO: libraries armpl_lp64_mp not found in ['/data/data/com.termux/files/usr/lib'] INFO: NOT AVAILABLE INFO: INFO: lapack_mkl_info: INFO: libraries mkl_rt not found in ['/data/data/com.termux/files/usr/lib'] INFO: NOT AVAILABLE INFO: INFO: openblas_lapack_info: INFO: libraries openblas not found in ['/data/data/com.termux/files/usr/lib'] INFO: NOT AVAILABLE INFO: INFO: openblas_clapack_info: INFO: libraries openblas,lapack not found in ['/data/data/com.termux/files/usr/lib'] INFO: NOT AVAILABLE INFO: INFO: flame_info: INFO: libraries flame not found in ['/data/data/com.termux/files/usr/lib'] INFO: NOT AVAILABLE INFO: INFO: atlas_3_10_threads_info: INFO: Setting PTATLAS=ATLAS INFO: libraries tatlas,tatlas not found in /data/data/com.termux/files/usr/lib INFO: <class 'numpy.distutils.system_info.atlas_3_10_threads_info'> INFO: NOT AVAILABLE INFO: INFO: atlas_3_10_info: INFO: libraries satlas,satlas not found in /data/data/com.termux/files/usr/lib INFO: <class 'numpy.distutils.system_info.atlas_3_10_info'> INFO: NOT AVAILABLE INFO: INFO: atlas_threads_info: INFO: Setting PTATLAS=ATLAS INFO: libraries ptf77blas,ptcblas,atlas not found in /data/data/com.termux/files/usr/lib INFO: <class 'numpy.distutils.system_info.atlas_threads_info'> INFO: NOT AVAILABLE INFO: INFO: atlas_info: INFO: libraries f77blas,cblas,atlas not found in /data/data/com.termux/files/usr/lib INFO: <class 'numpy.distutils.system_info.atlas_info'> INFO: NOT AVAILABLE INFO: INFO: lapack_info: INFO: libraries lapack not found in ['/data/data/com.termux/files/usr/lib'] INFO: NOT AVAILABLE INFO: /data/data/com.termux/files/usr/tmp/pip-install-1f42a2k9/numpy_2b2bb06d68b243208e412c41f84c8c79/numpy/distutils/system_info.py:1902: UserWarning: Lapack (http://www.netlib.org/lapack/) libraries not found. Directories to search for the libraries can be specified in the numpy/distutils/site.cfg file (section [lapack]) or by setting the LAPACK environment variable. return getattr(self, '_calc_info_{}'.format(name))() INFO: lapack_src_info: INFO: NOT AVAILABLE INFO: /data/data/com.termux/files/usr/tmp/pip-install-1f42a2k9/numpy_2b2bb06d68b243208e412c41f84c8c79/numpy/distutils/system_info.py:1902: UserWarning: Lapack (http://www.netlib.org/lapack/) sources not found. Directories to search for the sources can be specified in the numpy/distutils/site.cfg file (section [lapack_src]) or by setting the LAPACK_SRC environment variable. return getattr(self, '_calc_info_{}'.format(name))() INFO: NOT AVAILABLE INFO: INFO: numpy_linalg_lapack_lite: INFO: FOUND: INFO: language = c INFO: Warning: attempted relative import with no known parent package /data/data/com.termux/files/usr/tmp/pip-build-env-oocyvvoe/overlay/lib/python3.11/site-packages/setuptools/_distutils/dist.py:275: UserWarning: Unknown distribution option: 'define_macros' warnings.warn(msg) running bdist_wheel running build running config_cc INFO: unifing config_cc, config, build_clib, build_ext, build commands --compiler options running config_fc INFO: unifing config_fc, config, build_clib, build_ext, build commands --fcompiler options running build_src INFO: build_src INFO: building py_modules sources creating build creating build/src.linux-aarch64-3.11 creating build/src.linux-aarch64-3.11/numpy creating build/src.linux-aarch64-3.11/numpy/distutils INFO: building library "npymath" sources WARN: Could not locate executable armflang WARN: Could not locate executable gfortran WARN: Could not locate executable f95 WARN: Could not locate executable ifort WARN: Could not locate executable ifc WARN: Could not locate executable lf95 WARN: Could not locate executable pgfortran WARN: Could not locate executable nvfortran WARN: Could not locate executable f90 WARN: Could not locate executable f77 WARN: Could not locate executable fort WARN: Could not locate executable efort WARN: Could not locate executable efc WARN: Could not locate executable g77 WARN: Could not locate executable g95 WARN: Could not locate executable pathf95 WARN: Could not locate executable nagfor WARN: Could not locate executable frt WARN: don't know how to compile Fortran code on platform 'posix' creating build/src.linux-aarch64-3.11/numpy/core creating build/src.linux-aarch64-3.11/numpy/core/src creating build/src.linux-aarch64-3.11/numpy/core/src/npymath INFO: conv_template:> build/src.linux-aarch64-3.11/numpy/core/src/npymath/npy_math_internal.h INFO: adding 'build/src.linux-aarch64-3.11/numpy/core/src/npymath' to include_dirs. INFO: conv_template:> build/src.linux-aarch64-3.11/numpy/core/src/npymath/ieee754.c INFO: conv_template:> build/src.linux-aarch64-3.11/numpy/core/src/npymath/npy_math_complex.c INFO: None - nothing done with h_files = ['build/src.linux-aarch64-3.11/numpy/core/src/npymath/npy_math_internal.h'] INFO: building library "npyrandom" sources INFO: building extension "numpy.core._multiarray_tests" sources creating build/src.linux-aarch64-3.11/numpy/core/src/multiarray INFO: conv_template:> build/src.linux-aarch64-3.11/numpy/core/src/multiarray/_multiarray_tests.c INFO: building extension "numpy.core._multiarray_umath" sources Traceback (most recent call last): File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 351, in <module> main() File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 333, in main json_out['return_val'] = hook(**hook_input['kwargs']) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 249, in build_wheel return _build_backend().build_wheel(wheel_directory, config_settings, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/data/com.termux/files/usr/tmp/pip-build-env-oocyvvoe/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 230, in build_wheel return self._build_with_temp_dir(['bdist_wheel'], '.whl', ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/data/com.termux/files/usr/tmp/pip-build-env-oocyvvoe/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 215, in _build_with_temp_dir self.run_setup() File "/data/data/com.termux/files/usr/tmp/pip-build-env-oocyvvoe/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 268, in run_setup self).run_setup(setup_script=setup_script) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/data/com.termux/files/usr/tmp/pip-build-env-oocyvvoe/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 158, in run_setup exec(compile(code, __file__, 'exec'), locals()) File "setup.py", line 479, in <module> setup_package() File "setup.py", line 471, in setup_package setup(**metadata) File "/data/data/com.termux/files/usr/tmp/pip-install-1f42a2k9/numpy_2b2bb06d68b243208e412c41f84c8c79/numpy/distutils/core.py", line 169, in setup return old_setup(**new_attr) ^^^^^^^^^^^^^^^^^^^^^ File "/data/data/com.termux/files/usr/tmp/pip-build-env-oocyvvoe/overlay/lib/python3.11/site-packages/setuptools/__init__.py", line 153, in setup return distutils.core.setup(**attrs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/data/com.termux/files/usr/tmp/pip-build-env-oocyvvoe/overlay/lib/python3.11/site-packages/setuptools/_distutils/core.py", line 148, in setup dist.run_commands() File "/data/data/com.termux/files/usr/tmp/pip-build-env-oocyvvoe/overlay/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 967, in run_commands self.run_command(cmd) File "/data/data/com.termux/files/usr/tmp/pip-build-env-oocyvvoe/overlay/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 986, in run_command cmd_obj.run() File "/data/data/com.termux/files/usr/tmp/pip-build-env-oocyvvoe/overlay/lib/python3.11/site-packages/wheel/bdist_wheel.py", line 299, in run self.run_command('build') File "/data/data/com.termux/files/usr/tmp/pip-build-env-oocyvvoe/overlay/lib/python3.11/site-packages/setuptools/_distutils/cmd.py", line 313, in run_command self.distribution.run_command(command) File "/data/data/com.termux/files/usr/tmp/pip-build-env-oocyvvoe/overlay/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 986, in run_command cmd_obj.run() File "/data/data/com.termux/files/usr/tmp/pip-install-1f42a2k9/numpy_2b2bb06d68b243208e412c41f84c8c79/numpy/distutils/command/build.py", line 62, in run old_build.run(self) File "/data/data/com.termux/files/usr/tmp/pip-build-env-oocyvvoe/overlay/lib/python3.11/site-packages/setuptools/_distutils/command/build.py", line 135, in run self.run_command(cmd_name) File "/data/data/com.termux/files/usr/tmp/pip-build-env-oocyvvoe/overlay/lib/python3.11/site-packages/setuptools/_distutils/cmd.py", line 313, in run_command self.distribution.run_command(command) File "/data/data/com.termux/files/usr/tmp/pip-build-env-oocyvvoe/overlay/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 986, in run_command cmd_obj.run() File "/data/data/com.termux/files/usr/tmp/pip-install-1f42a2k9/numpy_2b2bb06d68b243208e412c41f84c8c79/numpy/distutils/command/build_src.py", line 144, in run self.build_sources() File "/data/data/com.termux/files/usr/tmp/pip-install-1f42a2k9/numpy_2b2bb06d68b243208e412c41f84c8c79/numpy/distutils/command/build_src.py", line 161, in build_sources self.build_extension_sources(ext) File "/data/data/com.termux/files/usr/tmp/pip-install-1f42a2k9/numpy_2b2bb06d68b243208e412c41f84c8c79/numpy/distutils/command/build_src.py", line 318, in build_extension_sources sources = self.generate_sources(sources, ext) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/data/com.termux/files/usr/tmp/pip-install-1f42a2k9/numpy_2b2bb06d68b243208e412c41f84c8c79/numpy/distutils/command/build_src.py", line 378, in generate_sources source = func(extension, build_dir) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/data/com.termux/files/usr/tmp/pip-install-1f42a2k9/numpy_2b2bb06d68b243208e412c41f84c8c79/numpy/core/setup.py", line 506, in generate_config_h check_math_capabilities(config_cmd, ext, moredefs, mathlibs) File "/data/data/com.termux/files/usr/tmp/pip-install-1f42a2k9/numpy_2b2bb06d68b243208e412c41f84c8c79/numpy/core/setup.py", line 192, in check_math_capabilities raise SystemError("One of the required function to build numpy is not" SystemError: One of the required function to build numpy is not available (the list is ['sin', 'cos', 'tan', 'sinh', 'cosh', 'tanh', 'fabs', 'floor', 'ceil', 'sqrt', 'log10', 'log', 'exp', 'asin', 'acos', 'atan', 'fmod', 'modf', 'frexp', 'ldexp', 'expm1', 'log1p', 'acosh', 'asinh', 'atanh', 'rint', 'trunc', 'exp2', 'copysign', 'nextafter', 'strtoll', 'strtoull', 'cbrt', 'log2', 'pow', 'hypot', 'atan2', 'creal', 'cimag', 'conj']). [end of output] note: This error originates from a subprocess, and is likely not a problem with pip. ERROR: Failed building wheel for numpy ERROR: Could not build wheels for numpy, which is required to install pyproject.toml-based projects
Reply
#2
Never mind, I found the answer on another web site. You have to install it with the following command (but don't ask me why, because I don't know!):

MATHLIB="m" pip3 install numpy

See https://superuser.com/questions/1724176/...-in-termux
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  android e python fece recognition Fabiola 1 683 Sep-13-2023, 04:59 PM
Last Post: albertschmidt
  Python-for-Android:p4a: syntax error in main.py while compiling apk jttolleson 2 1,777 Sep-17-2022, 04:09 AM
Last Post: jttolleson
  Python bot for ADB Android SCRCPY Bizzy_ 3 4,386 May-01-2021, 10:41 AM
Last Post: Larz60+
  Can Embedded Python run any shared library on Android ? sprotz 0 2,268 Nov-08-2020, 12:21 PM
Last Post: sprotz
  Developing Python with OpenCV into an Android App AviationFreak 1 6,769 Sep-29-2019, 08:55 AM
Last Post: wavic
  Where is usually located the python interpreter on android devices? anddontyoucomebacknomore 1 2,211 Jul-03-2019, 06:32 PM
Last Post: metulburr
  Made a simple script for android (really simple) but it is not running anddontyoucomebacknomore 2 2,324 Mar-06-2019, 12:19 AM
Last Post: anddontyoucomebacknomore
  Integrating Python Script for Android App everythingisenergy 0 6,182 Jan-15-2019, 07:39 PM
Last Post: everythingisenergy

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020