pythoncpython-3.xtron

I am getting an error "Fatal error no such file or directory #include 'Python.h'" while building wheel for cytoolz


I tried to install tronpy module in Pydroid 3, but it failed with an error FileNotFound. I used this command:

pip3 install tronpy

And got this error message:

/storage/emulated/0 $ pip3 install tronpy
Collecting tronpy
  Using cached tronpy-0.2.6-py3-none-any.whl (34 kB)
Collecting base58<3.0.0,>=2.0.0
  Using cached base58-2.1.1-py3-none-any.whl (5.6 kB)
Collecting pycryptodome<4.0.0,>=3.9.7
  Using cached pycryptodome-3.15.0-cp35-abi3-linux_aarch64.whl
Collecting ecdsa<0.16,>=0.15
  Using cached ecdsa-0.15-py2.py3-none-any.whl (100 kB)
Collecting httpx<0.17.0,>=0.16.1
  Using cached httpx-0.16.1-py3-none-any.whl (65 kB)
Requirement already satisfied: requests<3.0.0,>=2.23.0 in /data/data/ru.iiec.pydroid3/files/aarch64-linux-android/lib/python3.9/site-packages (from tronpy) (2.28.1)
Collecting eth_abi<3.0.0,>=2.1.1
  Using cached eth_abi-2.2.0-py3-none-any.whl (28 kB)
Requirement already satisfied: six>=1.9.0 in /data/data/ru.iiec.pydroid3/files/aarch64-linux-android/lib/python3.9/site-packages (from ecdsa<0.16,>=0.15->tronpy) (1.16.0)
Collecting eth-typing<3.0.0,>=2.0.0
  Using cached eth_typing-2.3.0-py3-none-any.whl (6.2 kB)
Collecting eth-utils<2.0.0,>=1.2.0
  Using cached eth_utils-1.10.0-py3-none-any.whl (24 kB)
Collecting parsimonious<0.9.0,>=0.8.0
  Using cached parsimonious-0.8.1-py3-none-any.whl
Requirement already satisfied: certifi in /data/data/ru.iiec.pydroid3/files/aarch64-linux-android/lib/python3.9/site-packages (from httpx<0.17.0,>=0.16.1->tronpy) (2022.9.24)
Collecting sniffio
  Using cached sniffio-1.3.0-py3-none-any.whl (10 kB)
Collecting httpcore==0.12.*
  Using cached httpcore-0.12.3-py3-none-any.whl (55 kB)
Collecting rfc3986[idna2008]<2,>=1.3
  Using cached rfc3986-1.5.0-py2.py3-none-any.whl (31 kB)
Collecting h11==0.*
  Using cached h11-0.14.0-py3-none-any.whl (58 kB)
Requirement already satisfied: charset-normalizer<3,>=2 in /data/data/ru.iiec.pydroid3/files/aarch64-linux-android/lib/python3.9/site-packages (from requests<3.0.0,>=2.23.0->tronpy) (2.1.1)
Requirement already satisfied: idna<4,>=2.5 in /data/data/ru.iiec.pydroid3/files/aarch64-linux-android/lib/python3.9/site-packages (from requests<3.0.0,>=2.23.0->tronpy) (3.4)
Requirement already satisfied: urllib3<1.27,>=1.21.1 in /data/data/ru.iiec.pydroid3/files/aarch64-linux-android/lib/python3.9/site-packages (from requests<3.0.0,>=2.23.0->tronpy) (1.26.12)
Collecting eth-hash<0.4.0,>=0.3.1
  Using cached eth_hash-0.3.3-py3-none-any.whl (8.9 kB)
Collecting cytoolz<1.0.0,>=0.10.1
  Using cached cytoolz-0.12.0.tar.gz (502 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting toolz>=0.8.0
  Using cached toolz-0.12.0-py3-none-any.whl (55 kB)
Building wheels for collected packages: cytoolz
  Building wheel for cytoolz (pyproject.toml) ... error
  error: subprocess-exited-with-error

  × Building wheel for cytoolz (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [62 lines of output]
      [1/5] Cythonizing cytoolz/utils.pyx
      [2/5] Cythonizing cytoolz/dicttoolz.pyx
      [3/5] Cythonizing cytoolz/functoolz.pyx
      [4/5] Cythonizing cytoolz/itertoolz.pyx
      [5/5] Cythonizing cytoolz/recipes.pyx
      running bdist_wheel
      running build
      running build_py
      creating build
      creating build/lib.linux-aarch64-cpython-39
      creating build/lib.linux-aarch64-cpython-39/cytoolz
      copying cytoolz/__init__.py -> build/lib.linux-aarch64-cpython-39/cytoolz
      copying cytoolz/_signatures.py -> build/lib.linux-aarch64-cpython-39/cytoolz
      copying cytoolz/_version.py -> build/lib.linux-aarch64-cpython-39/cytoolz
      copying cytoolz/compatibility.py -> build/lib.linux-aarch64-cpython-39/cytoolz
      creating build/lib.linux-aarch64-cpython-39/cytoolz/curried
      copying cytoolz/curried/__init__.py -> build/lib.linux-aarch64-cpython-39/cytoolz/curried
      copying cytoolz/curried/exceptions.py -> build/lib.linux-aarch64-cpython-39/cytoolz/curried
      copying cytoolz/curried/operator.py -> build/lib.linux-aarch64-cpython-39/cytoolz/curried
      copying cytoolz/dicttoolz.pyx -> build/lib.linux-aarch64-cpython-39/cytoolz
      copying cytoolz/functoolz.pyx -> build/lib.linux-aarch64-cpython-39/cytoolz
      copying cytoolz/itertoolz.pyx -> build/lib.linux-aarch64-cpython-39/cytoolz
      copying cytoolz/recipes.pyx -> build/lib.linux-aarch64-cpython-39/cytoolz
      copying cytoolz/utils.pyx -> build/lib.linux-aarch64-cpython-39/cytoolz
      copying cytoolz/__init__.pxd -> build/lib.linux-aarch64-cpython-39/cytoolz
      copying cytoolz/cpython.pxd -> build/lib.linux-aarch64-cpython-39/cytoolz
      copying cytoolz/dicttoolz.pxd -> build/lib.linux-aarch64-cpython-39/cytoolz
      copying cytoolz/functoolz.pxd -> build/lib.linux-aarch64-cpython-39/cytoolz
      copying cytoolz/itertoolz.pxd -> build/lib.linux-aarch64-cpython-39/cytoolz
      copying cytoolz/recipes.pxd -> build/lib.linux-aarch64-cpython-39/cytoolz
      copying cytoolz/utils.pxd -> build/lib.linux-aarch64-cpython-39/cytoolz
      creating build/lib.linux-aarch64-cpython-39/cytoolz/tests
      copying cytoolz/tests/dev_skip_test.py -> build/lib.linux-aarch64-cpython-39/cytoolz/tests
      copying cytoolz/tests/test_compatibility.py -> build/lib.linux-aarch64-cpython-39/cytoolz/tests
      copying cytoolz/tests/test_curried.py -> build/lib.linux-aarch64-cpython-39/cytoolz/tests
      copying cytoolz/tests/test_curried_toolzlike.py -> build/lib.linux-aarch64-cpython-39/cytoolz/tests
      copying cytoolz/tests/test_dev_skip_test.py -> build/lib.linux-aarch64-cpython-39/cytoolz/tests
      copying cytoolz/tests/test_dicttoolz.py -> build/lib.linux-aarch64-cpython-39/cytoolz/tests
      copying cytoolz/tests/test_docstrings.py -> build/lib.linux-aarch64-cpython-39/cytoolz/tests
      copying cytoolz/tests/test_doctests.py -> build/lib.linux-aarch64-cpython-39/cytoolz/tests
      copying cytoolz/tests/test_embedded_sigs.py -> build/lib.linux-aarch64-cpython-39/cytoolz/tests
      copying cytoolz/tests/test_functoolz.py -> build/lib.linux-aarch64-cpython-39/cytoolz/tests
      copying cytoolz/tests/test_inspect_args.py -> build/lib.linux-aarch64-cpython-39/cytoolz/tests
      copying cytoolz/tests/test_itertoolz.py -> build/lib.linux-aarch64-cpython-39/cytoolz/tests
      copying cytoolz/tests/test_none_safe.py -> build/lib.linux-aarch64-cpython-39/cytoolz/tests
      copying cytoolz/tests/test_recipes.py -> build/lib.linux-aarch64-cpython-39/cytoolz/tests
      copying cytoolz/tests/test_serialization.py -> build/lib.linux-aarch64-cpython-39/cytoolz/tests
      copying cytoolz/tests/test_signatures.py -> build/lib.linux-aarch64-cpython-39/cytoolz/tests
      copying cytoolz/tests/test_tlz.py -> build/lib.linux-aarch64-cpython-39/cytoolz/tests
      copying cytoolz/tests/test_utils.py -> build/lib.linux-aarch64-cpython-39/cytoolz/tests
      UPDATING build/lib.linux-aarch64-cpython-39/cytoolz/_version.py
      set build/lib.linux-aarch64-cpython-39/cytoolz/_version.py to '0.12.0'
      running build_ext
      building 'cytoolz.dicttoolz' extension
      creating build/temp.linux-aarch64-cpython-39
      creating build/temp.linux-aarch64-cpython-39/cytoolz
      aarch64-linux-android-gcc -Wno-unused-result -Wsign-compare -DNDEBUG -O3 -Wall -Os -s -fno-builtin-copysignf -D__ANDROID_API__=21 -I/home/n0n3m4/Desktop/Pydroid/pyinstall3/include/python3.9 -c cytoolz/dicttoolz.c -o build/temp.linux-aarch64-cpython-39/cytoolz/dicttoolz.o
      cytoolz/dicttoolz.c:19:10: fatal error: Python.h: No such file or directory
         19 | #include "Python.h"
            |          ^~~~~~~~~~
      compilation terminated.
      error: command '/data/user/0/ru.iiec.pydroid3/files/bin/aarch64-linux-android-gcc' 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 cytoolz
Failed to build cytoolz
ERROR: Could not build wheels for cytoolz, which is required to install pyproject.toml-based projects
/storage/emulated/0 $

Thanks for any answer.


Solution

  • I used Termux and wrote apt install python-dev and then I installed tronpy and started my code by typing python and then my code. Thanks for comment.