Giter VIP home page Giter VIP logo

Comments (9)

AlfonsSchmid avatar AlfonsSchmid commented on June 12, 2024 1

@jedie, thanks a lot. I will try and give a feedback. Please give me a little time.

from inverter-connect.

giovanne123 avatar giovanne123 commented on June 12, 2024 1

cli.py - is working for me now
(dev-cli.py - still isn't working, will have a look for it later...)

from inverter-connect.

jedie avatar jedie commented on June 12, 2024

Sorry, i have no idea. A little bit strange looks this lines:
grafik

And there is a Python version mismatch: You start the cli with python3.9, but later in the traceback you can see that python3.10 is used.

Maybe try 3.10, e.g.:

pi@raspberrypi:~/inverter-connect $ rm -Rf .venv
pi@raspberrypi:~/inverter-connect $ python3.10 ./cli.py --help

What's the output of: python3 --version ? On my Pi it's 3.9.2, but i used https://dietpi.com/

from inverter-connect.

giovanne123 avatar giovanne123 commented on June 12, 2024

Here also not working on Rpi with python:

pi@raspberrypi:/home/pi/inverter-connect# python3 -V
Python 3.9.2
pi@raspberrypi:/home/pi/inverter-connect# uname -a
Linux raspberrypi 5.15.84-v7l+ #1613 SMP Thu Jan 5 12:01:26 GMT 2023 armv7l GNU/Linux
pi@raspberrypi:/home/pi/inverter-connect# cat /sys/firmware/devicetree/base/model
Raspberry Pi 4 Model B Rev 1.1

Wish: A docker image with all needed requirements would be fine to not influence the local running system ;-)

Error messages after calling the cli.py --help again:

pi@raspberrypi:/home/pi/inverter-connect# python3.9 ./cli.py --help

+ /home/pi/inverter-connect/.venv/bin/pip-sync /home/pi/inverter-connect/requirements.dev.txt

Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple, https://www.piwheels.org/simple
Collecting arrow==1.2.3 (from -r /tmp/tmpg8jq1fkz (line 1))
  Using cached arrow-1.2.3-py3-none-any.whl (66 kB)
Collecting astor==0.8.1 (from -r /tmp/tmpg8jq1fkz (line 4))
  Using cached https://www.piwheels.org/simple/astor/astor-0.8.1-py2.py3-none-any.whl (27 kB)
Collecting autopep8==2.0.2 (from -r /tmp/tmpg8jq1fkz (line 7))
  Using cached autopep8-2.0.2-py2.py3-none-any.whl (45 kB)
Collecting binaryornot==0.4.4 (from -r /tmp/tmpg8jq1fkz (line 10))
  Using cached https://www.piwheels.org/simple/binaryornot/binaryornot-0.4.4-py2.py3-none-any.whl (9.0 kB)
Collecting black==23.3.0 (from -r /tmp/tmpg8jq1fkz (line 13))
  Using cached black-23.3.0-py3-none-any.whl (180 kB)
Collecting bleach==6.0.0 (from -r /tmp/tmpg8jq1fkz (line 39))
  Using cached bleach-6.0.0-py3-none-any.whl (162 kB)
Collecting bx-py-utils==80 (from -r /tmp/tmpg8jq1fkz (line 42))
  Using cached https://www.piwheels.org/simple/bx-py-utils/bx_py_utils-80-py3-none-any.whl (45 kB)
Collecting cachetools==5.3.0 (from -r /tmp/tmpg8jq1fkz (line 45))
  Using cached cachetools-5.3.0-py3-none-any.whl (9.3 kB)
Collecting certifi==2022.12.7 (from -r /tmp/tmpg8jq1fkz (line 48))
  Using cached certifi-2022.12.7-py3-none-any.whl (155 kB)
Collecting cffi==1.15.1 (from -r /tmp/tmpg8jq1fkz (line 51))
  Using cached cffi-1.15.1.tar.gz (508 kB)
  Preparing metadata (setup.py) ... done
Collecting chardet==5.1.0 (from -r /tmp/tmpg8jq1fkz (line 116))
  Using cached chardet-5.1.0-py3-none-any.whl (199 kB)
Collecting charset-normalizer==3.1.0 (from -r /tmp/tmpg8jq1fkz (line 119))
  Using cached charset_normalizer-3.1.0-py3-none-any.whl (46 kB)
Collecting codespell==2.2.4 (from -r /tmp/tmpg8jq1fkz (line 195))
  Using cached codespell-2.2.4-py3-none-any.whl (234 kB)
Collecting colorama==0.4.6 (from -r /tmp/tmpg8jq1fkz (line 198))
  Using cached https://www.piwheels.org/simple/colorama/colorama-0.4.6-py2.py3-none-any.whl (25 kB)
Collecting cookiecutter==2.1.1 (from -r /tmp/tmpg8jq1fkz (line 201))
  Using cached cookiecutter-2.1.1-py2.py3-none-any.whl (36 kB)
Collecting coverage==7.2.3 (from -r /tmp/tmpg8jq1fkz (line 204))
  Using cached coverage-7.2.3-cp39-cp39-linux_armv7l.whl
Collecting cryptography==40.0.2 (from -r /tmp/tmpg8jq1fkz (line 256))
  Using cached cryptography-40.0.2.tar.gz (625 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting darker[color,flynt,isort]==1.7.1 (from -r /tmp/tmpg8jq1fkz (line 276))
  Using cached darker-1.7.1-py3-none-any.whl (122 kB)
Collecting distlib==0.3.6 (from -r /tmp/tmpg8jq1fkz (line 279))
  Using cached distlib-0.3.6-py2.py3-none-any.whl (468 kB)
Collecting docutils==0.19 (from -r /tmp/tmpg8jq1fkz (line 282))
  Using cached docutils-0.19-py3-none-any.whl (570 kB)
Collecting dparse==0.6.2 (from -r /tmp/tmpg8jq1fkz (line 285))
  Using cached dparse-0.6.2-py3-none-any.whl (12 kB)
Collecting editorconfig==0.12.3 (from -r /tmp/tmpg8jq1fkz (line 288))
  Using cached https://www.piwheels.org/simple/editorconfig/EditorConfig-0.12.3-py3-none-any.whl (16 kB)
Collecting filelock==3.12.0 (from -r /tmp/tmpg8jq1fkz (line 291))
  Using cached https://www.piwheels.org/simple/filelock/filelock-3.12.0-py3-none-any.whl (10 kB)
Collecting flake8==6.0.0 (from -r /tmp/tmpg8jq1fkz (line 294))
  Using cached flake8-6.0.0-py2.py3-none-any.whl (57 kB)
Collecting flynt==0.77 (from -r /tmp/tmpg8jq1fkz (line 297))
  Using cached https://www.piwheels.org/simple/flynt/flynt-0.77-py3-none-any.whl (32 kB)
Collecting idna==3.4 (from -r /tmp/tmpg8jq1fkz (line 300))
  Using cached idna-3.4-py3-none-any.whl (61 kB)
Collecting importlib-metadata==6.6.0 (from -r /tmp/tmpg8jq1fkz (line 303))
  Using cached importlib_metadata-6.6.0-py3-none-any.whl (22 kB)
Collecting isort==5.12.0 (from -r /tmp/tmpg8jq1fkz (line 306))
  Using cached isort-5.12.0-py3-none-any.whl (91 kB)
Collecting jaraco-classes==3.2.3 (from -r /tmp/tmpg8jq1fkz (line 309))
  Using cached jaraco.classes-3.2.3-py3-none-any.whl (6.0 kB)
Collecting jeepney==0.8.0 (from -r /tmp/tmpg8jq1fkz (line 312))
  Using cached jeepney-0.8.0-py3-none-any.whl (48 kB)
Collecting jinja2==3.1.2 (from -r /tmp/tmpg8jq1fkz (line 315))
  Using cached Jinja2-3.1.2-py3-none-any.whl (133 kB)
Collecting jinja2-time==0.2.0 (from -r /tmp/tmpg8jq1fkz (line 318))
  Using cached https://www.piwheels.org/simple/jinja2-time/jinja2_time-0.2.0-py2.py3-none-any.whl (6.4 kB)
Collecting keyring==23.13.1 (from -r /tmp/tmpg8jq1fkz (line 321))
  Using cached keyring-23.13.1-py3-none-any.whl (37 kB)
Collecting manageprojects==0.9.10 (from -r /tmp/tmpg8jq1fkz (line 324))
  Using cached manageprojects-0.9.10-py3-none-any.whl (78 kB)
Collecting markdown-it-py==2.2.0 (from -r /tmp/tmpg8jq1fkz (line 327))
  Using cached markdown_it_py-2.2.0-py3-none-any.whl (84 kB)
Collecting markupsafe==2.1.2 (from -r /tmp/tmpg8jq1fkz (line 330))
  Using cached MarkupSafe-2.1.2-cp39-cp39-linux_armv7l.whl
Collecting mccabe==0.7.0 (from -r /tmp/tmpg8jq1fkz (line 381))
  Using cached mccabe-0.7.0-py2.py3-none-any.whl (7.3 kB)
Collecting mdurl==0.1.2 (from -r /tmp/tmpg8jq1fkz (line 384))
  Using cached https://www.piwheels.org/simple/mdurl/mdurl-0.1.2-py3-none-any.whl (10.0 kB)
Collecting more-itertools==9.1.0 (from -r /tmp/tmpg8jq1fkz (line 387))
  Using cached more_itertools-9.1.0-py3-none-any.whl (54 kB)
Collecting mypy==1.2.0 (from -r /tmp/tmpg8jq1fkz (line 390))
  Using cached mypy-1.2.0-py3-none-any.whl (2.4 MB)
Collecting mypy-extensions==1.0.0 (from -r /tmp/tmpg8jq1fkz (line 417))
  Using cached mypy_extensions-1.0.0-py3-none-any.whl (4.7 kB)
Collecting paho-mqtt==1.6.1 (from -r /tmp/tmpg8jq1fkz (line 420))
  Using cached paho_mqtt-1.6.1-py3-none-any.whl
Collecting pathspec==0.11.1 (from -r /tmp/tmpg8jq1fkz (line 422))
  Using cached pathspec-0.11.1-py3-none-any.whl (29 kB)
Collecting pkginfo==1.9.6 (from -r /tmp/tmpg8jq1fkz (line 425))
  Using cached pkginfo-1.9.6-py3-none-any.whl (30 kB)
Collecting platformdirs==3.5.0 (from -r /tmp/tmpg8jq1fkz (line 428))
  Using cached https://www.piwheels.org/simple/platformdirs/platformdirs-3.5.0-py3-none-any.whl (15 kB)
Collecting pluggy==1.0.0 (from -r /tmp/tmpg8jq1fkz (line 431))
  Using cached pluggy-1.0.0-py2.py3-none-any.whl (13 kB)
Collecting pycodestyle==2.10.0 (from -r /tmp/tmpg8jq1fkz (line 434))
  Using cached pycodestyle-2.10.0-py2.py3-none-any.whl (41 kB)
Collecting pycparser==2.21 (from -r /tmp/tmpg8jq1fkz (line 437))
  Using cached pycparser-2.21-py2.py3-none-any.whl (118 kB)
Collecting pyflakes==3.0.1 (from -r /tmp/tmpg8jq1fkz (line 440))
  Using cached pyflakes-3.0.1-py2.py3-none-any.whl (62 kB)
Collecting pygments==2.15.1 (from -r /tmp/tmpg8jq1fkz (line 443))
  Using cached Pygments-2.15.1-py3-none-any.whl (1.1 MB)
Collecting pyproject-api==1.5.1 (from -r /tmp/tmpg8jq1fkz (line 446))
  Using cached https://www.piwheels.org/simple/pyproject-api/pyproject_api-1.5.1-py3-none-any.whl (12 kB)
Collecting python-dateutil==2.8.2 (from -r /tmp/tmpg8jq1fkz (line 449))
  Using cached https://www.piwheels.org/simple/python-dateutil/python_dateutil-2.8.2-py2.py3-none-any.whl (247 kB)
Collecting python-slugify==8.0.1 (from -r /tmp/tmpg8jq1fkz (line 452))
  Using cached python_slugify-8.0.1-py2.py3-none-any.whl (9.7 kB)
Collecting pyupgrade==3.3.2 (from -r /tmp/tmpg8jq1fkz (line 455))
  Using cached pyupgrade-3.3.2-py2.py3-none-any.whl (58 kB)
Collecting pyyaml==6.0 (from -r /tmp/tmpg8jq1fkz (line 458))
  Using cached PyYAML-6.0-cp39-cp39-linux_armv7l.whl
Collecting readme-renderer==37.3 (from -r /tmp/tmpg8jq1fkz (line 499))
  Using cached readme_renderer-37.3-py3-none-any.whl (14 kB)
Collecting requests==2.29.0 (from -r /tmp/tmpg8jq1fkz (line 502))
  Using cached requests-2.29.0-py3-none-any.whl (62 kB)
Collecting requests-toolbelt==0.10.1 (from -r /tmp/tmpg8jq1fkz (line 505))
  Using cached requests_toolbelt-0.10.1-py2.py3-none-any.whl (54 kB)
Collecting rfc3986==2.0.0 (from -r /tmp/tmpg8jq1fkz (line 508))
  Using cached rfc3986-2.0.0-py2.py3-none-any.whl (31 kB)
Collecting rich==13.3.5 (from -r /tmp/tmpg8jq1fkz (line 511))
  Using cached rich-13.3.5-py3-none-any.whl (238 kB)
Collecting rich-click==1.6.1 (from -r /tmp/tmpg8jq1fkz (line 514))
  Using cached rich_click-1.6.1-py3-none-any.whl (19 kB)
Collecting ruamel-yaml==0.17.21 (from -r /tmp/tmpg8jq1fkz (line 517))
  Using cached ruamel.yaml-0.17.21-py3-none-any.whl (109 kB)
Collecting ruamel-yaml-clib==0.2.7 (from -r /tmp/tmpg8jq1fkz (line 520))
  Using cached ruamel.yaml.clib-0.2.7-cp39-cp39-linux_armv7l.whl
Collecting safety==2.3.4 (from -r /tmp/tmpg8jq1fkz (line 557))
  Using cached safety-2.3.4-py3-none-any.whl (57 kB)
Collecting secretstorage==3.3.3 (from -r /tmp/tmpg8jq1fkz (line 560))
  Using cached SecretStorage-3.3.3-py3-none-any.whl (15 kB)
Collecting setuptools==67.7.2 (from -r /tmp/tmpg8jq1fkz (line 563))
  Using cached setuptools-67.7.2-py3-none-any.whl (1.1 MB)
Collecting six==1.16.0 (from -r /tmp/tmpg8jq1fkz (line 566))
  Using cached https://www.piwheels.org/simple/six/six-1.16.0-py2.py3-none-any.whl (11 kB)
Collecting text-unidecode==1.3 (from -r /tmp/tmpg8jq1fkz (line 569))
  Using cached https://www.piwheels.org/simple/text-unidecode/text_unidecode-1.3-py2.py3-none-any.whl (78 kB)
Collecting tokenize-rt==5.0.0 (from -r /tmp/tmpg8jq1fkz (line 572))
  Using cached tokenize_rt-5.0.0-py2.py3-none-any.whl (5.8 kB)
Collecting toml==0.10.2 (from -r /tmp/tmpg8jq1fkz (line 575))
  Using cached https://www.piwheels.org/simple/toml/toml-0.10.2-py2.py3-none-any.whl (16 kB)
Collecting tomlkit==0.11.8 (from -r /tmp/tmpg8jq1fkz (line 578))
  Using cached https://www.piwheels.org/simple/tomlkit/tomlkit-0.11.8-py3-none-any.whl (35 kB)
Collecting tox==4.5.1 (from -r /tmp/tmpg8jq1fkz (line 581))
  Using cached https://www.piwheels.org/simple/tox/tox-4.5.1-py3-none-any.whl (148 kB)
Collecting twine==4.0.2 (from -r /tmp/tmpg8jq1fkz (line 584))
  Using cached twine-4.0.2-py3-none-any.whl (36 kB)
Collecting typing-extensions==4.5.0 (from -r /tmp/tmpg8jq1fkz (line 587))
  Using cached typing_extensions-4.5.0-py3-none-any.whl (27 kB)
Collecting urllib3==1.26.15 (from -r /tmp/tmpg8jq1fkz (line 590))
  Using cached urllib3-1.26.15-py2.py3-none-any.whl (140 kB)
Collecting virtualenv==20.22.0 (from -r /tmp/tmpg8jq1fkz (line 593))
  Using cached https://www.piwheels.org/simple/virtualenv/virtualenv-20.22.0-py3-none-any.whl (3.2 MB)
Collecting webencodings==0.5.1 (from -r /tmp/tmpg8jq1fkz (line 596))
  Using cached https://www.piwheels.org/simple/webencodings/webencodings-0.5.1-py2.py3-none-any.whl (11 kB)
Collecting zipp==3.15.0 (from -r /tmp/tmpg8jq1fkz (line 599))
  Using cached zipp-3.15.0-py3-none-any.whl (6.8 kB)
Requirement already satisfied: tomli in ./.venv/lib/python3.9/site-packages (from autopep8==2.0.2->-r /tmp/tmpg8jq1fkz (line 7)) (2.0.1)
Requirement already satisfied: click>=8.0.0 in ./.venv/lib/python3.9/site-packages (from black==23.3.0->-r /tmp/tmpg8jq1fkz (line 13)) (8.1.3)
Requirement already satisfied: packaging>=22.0 in ./.venv/lib/python3.9/site-packages (from black==23.3.0->-r /tmp/tmpg8jq1fkz (line 13)) (23.1)
Building wheels for collected packages: cffi, cryptography
  Building wheel for cffi (setup.py) ... error
  error: subprocess-exited-with-error

  × python setup.py bdist_wheel did not run successfully.
  │ exit code: 1
  ╰─> [58 lines of output]
      Package libffi was not found in the pkg-config search path.
      Perhaps you should add the directory containing `libffi.pc'
      to the PKG_CONFIG_PATH environment variable
      No package 'libffi' found
      Package libffi was not found in the pkg-config search path.
      Perhaps you should add the directory containing `libffi.pc'
      to the PKG_CONFIG_PATH environment variable
      No package 'libffi' found
      Package libffi was not found in the pkg-config search path.
      Perhaps you should add the directory containing `libffi.pc'
      to the PKG_CONFIG_PATH environment variable
      No package 'libffi' found
      Package libffi was not found in the pkg-config search path.
      Perhaps you should add the directory containing `libffi.pc'
      to the PKG_CONFIG_PATH environment variable
      No package 'libffi' found
      Package libffi was not found in the pkg-config search path.
      Perhaps you should add the directory containing `libffi.pc'
      to the PKG_CONFIG_PATH environment variable
      No package 'libffi' found
      running bdist_wheel
      running build
      running build_py
      Generating grammar tables from /usr/lib/python3.9/lib2to3/Grammar.txt
      Generating grammar tables from /usr/lib/python3.9/lib2to3/PatternGrammar.txt
      creating build
      creating build/lib.linux-armv7l-3.9
      creating build/lib.linux-armv7l-3.9/cffi
      copying cffi/vengine_gen.py -> build/lib.linux-armv7l-3.9/cffi
      copying cffi/vengine_cpy.py -> build/lib.linux-armv7l-3.9/cffi
      copying cffi/cffi_opcode.py -> build/lib.linux-armv7l-3.9/cffi
      copying cffi/commontypes.py -> build/lib.linux-armv7l-3.9/cffi
      copying cffi/recompiler.py -> build/lib.linux-armv7l-3.9/cffi
      copying cffi/cparser.py -> build/lib.linux-armv7l-3.9/cffi
      copying cffi/lock.py -> build/lib.linux-armv7l-3.9/cffi
      copying cffi/error.py -> build/lib.linux-armv7l-3.9/cffi
      copying cffi/__init__.py -> build/lib.linux-armv7l-3.9/cffi
      copying cffi/api.py -> build/lib.linux-armv7l-3.9/cffi
      copying cffi/pkgconfig.py -> build/lib.linux-armv7l-3.9/cffi
      copying cffi/backend_ctypes.py -> build/lib.linux-armv7l-3.9/cffi
      copying cffi/verifier.py -> build/lib.linux-armv7l-3.9/cffi
      copying cffi/model.py -> build/lib.linux-armv7l-3.9/cffi
      copying cffi/ffiplatform.py -> build/lib.linux-armv7l-3.9/cffi
      copying cffi/setuptools_ext.py -> build/lib.linux-armv7l-3.9/cffi
      copying cffi/_cffi_include.h -> build/lib.linux-armv7l-3.9/cffi
      copying cffi/parse_c_type.h -> build/lib.linux-armv7l-3.9/cffi
      copying cffi/_embedding.h -> build/lib.linux-armv7l-3.9/cffi
      copying cffi/_cffi_errors.h -> build/lib.linux-armv7l-3.9/cffi
      running build_ext
      building '_cffi_backend' extension
      creating build/temp.linux-armv7l-3.9
      creating build/temp.linux-armv7l-3.9/c
      arm-linux-gnueabihf-gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -ffile-prefix-map=/python3.9-3.9.2=. -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -g -ffile-prefix-map=/python3.9-3.9.2=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -DFFI_BUILDING=1 -DUSE__THREAD -DHAVE_SYNC_SYNCHRONIZE -I/usr/include/ffi -I/usr/include/libffi -I/home/pi/inverter-connect/.venv/include -I/usr/include/python3.9 -c c/_cffi_backend.c -o build/temp.linux-armv7l-3.9/c/_cffi_backend.o
      c/_cffi_backend.c:15:10: fatal error: ffi.h: No such file or directory
         15 | #include <ffi.h>
            |          ^~~~~~~
      compilation terminated.
      error: command '/usr/bin/arm-linux-gnueabihf-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 cffi
  Running setup.py clean for cffi
  Building wheel for cryptography (pyproject.toml) ... error
  error: subprocess-exited-with-error

  × Building wheel for cryptography (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [247 lines of output]
      running bdist_wheel
      running build
      running build_py
      creating build
      creating build/lib.linux-armv7l-cpython-39
      creating build/lib.linux-armv7l-cpython-39/cryptography
      copying src/cryptography/exceptions.py -> build/lib.linux-armv7l-cpython-39/cryptography
      copying src/cryptography/utils.py -> build/lib.linux-armv7l-cpython-39/cryptography
      copying src/cryptography/fernet.py -> build/lib.linux-armv7l-cpython-39/cryptography
      copying src/cryptography/__init__.py -> build/lib.linux-armv7l-cpython-39/cryptography
      copying src/cryptography/__about__.py -> build/lib.linux-armv7l-cpython-39/cryptography
      creating build/lib.linux-armv7l-cpython-39/cryptography/x509
      copying src/cryptography/x509/base.py -> build/lib.linux-armv7l-cpython-39/cryptography/x509
      copying src/cryptography/x509/certificate_transparency.py -> build/lib.linux-armv7l-cpython-39/cryptography/x509
      copying src/cryptography/x509/extensions.py -> build/lib.linux-armv7l-cpython-39/cryptography/x509
      copying src/cryptography/x509/ocsp.py -> build/lib.linux-armv7l-cpython-39/cryptography/x509
      copying src/cryptography/x509/__init__.py -> build/lib.linux-armv7l-cpython-39/cryptography/x509
      copying src/cryptography/x509/name.py -> build/lib.linux-armv7l-cpython-39/cryptography/x509
      copying src/cryptography/x509/general_name.py -> build/lib.linux-armv7l-cpython-39/cryptography/x509
      copying src/cryptography/x509/oid.py -> build/lib.linux-armv7l-cpython-39/cryptography/x509
      creating build/lib.linux-armv7l-cpython-39/cryptography/hazmat
      copying src/cryptography/hazmat/_oid.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat
      copying src/cryptography/hazmat/__init__.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat
      creating build/lib.linux-armv7l-cpython-39/cryptography/hazmat/bindings
      copying src/cryptography/hazmat/bindings/__init__.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/bindings
      creating build/lib.linux-armv7l-cpython-39/cryptography/hazmat/backends
      copying src/cryptography/hazmat/backends/__init__.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/backends
      creating build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives
      copying src/cryptography/hazmat/primitives/cmac.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives
      copying src/cryptography/hazmat/primitives/constant_time.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives
      copying src/cryptography/hazmat/primitives/_asymmetric.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives
      copying src/cryptography/hazmat/primitives/hmac.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives
      copying src/cryptography/hazmat/primitives/poly1305.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives
      copying src/cryptography/hazmat/primitives/keywrap.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives
      copying src/cryptography/hazmat/primitives/_serialization.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives
      copying src/cryptography/hazmat/primitives/__init__.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives
      copying src/cryptography/hazmat/primitives/_cipheralgorithm.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives
      copying src/cryptography/hazmat/primitives/hashes.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives
      copying src/cryptography/hazmat/primitives/padding.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives
      creating build/lib.linux-armv7l-cpython-39/cryptography/hazmat/bindings/openssl
      copying src/cryptography/hazmat/bindings/openssl/binding.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/bindings/openssl
      copying src/cryptography/hazmat/bindings/openssl/__init__.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/bindings/openssl
      copying src/cryptography/hazmat/bindings/openssl/_conditional.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/bindings/openssl
      creating build/lib.linux-armv7l-cpython-39/cryptography/hazmat/backends/openssl
      copying src/cryptography/hazmat/backends/openssl/aead.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/backends/openssl
      copying src/cryptography/hazmat/backends/openssl/cmac.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/backends/openssl
      copying src/cryptography/hazmat/backends/openssl/dh.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/backends/openssl
      copying src/cryptography/hazmat/backends/openssl/dsa.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/backends/openssl
      copying src/cryptography/hazmat/backends/openssl/hmac.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/backends/openssl
      copying src/cryptography/hazmat/backends/openssl/ed25519.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/backends/openssl
      copying src/cryptography/hazmat/backends/openssl/poly1305.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/backends/openssl
      copying src/cryptography/hazmat/backends/openssl/ed448.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/backends/openssl
      copying src/cryptography/hazmat/backends/openssl/utils.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/backends/openssl
      copying src/cryptography/hazmat/backends/openssl/ciphers.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/backends/openssl
      copying src/cryptography/hazmat/backends/openssl/__init__.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/backends/openssl
      copying src/cryptography/hazmat/backends/openssl/backend.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/backends/openssl
      copying src/cryptography/hazmat/backends/openssl/rsa.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/backends/openssl
      copying src/cryptography/hazmat/backends/openssl/decode_asn1.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/backends/openssl
      copying src/cryptography/hazmat/backends/openssl/ec.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/backends/openssl
      copying src/cryptography/hazmat/backends/openssl/x448.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/backends/openssl
      copying src/cryptography/hazmat/backends/openssl/hashes.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/backends/openssl
      creating build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives/kdf
      copying src/cryptography/hazmat/primitives/kdf/scrypt.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives/kdf
      copying src/cryptography/hazmat/primitives/kdf/kbkdf.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives/kdf
      copying src/cryptography/hazmat/primitives/kdf/concatkdf.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives/kdf
      copying src/cryptography/hazmat/primitives/kdf/hkdf.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives/kdf
      copying src/cryptography/hazmat/primitives/kdf/__init__.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives/kdf
      copying src/cryptography/hazmat/primitives/kdf/x963kdf.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives/kdf
      copying src/cryptography/hazmat/primitives/kdf/pbkdf2.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives/kdf
      creating build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives/serialization
      copying src/cryptography/hazmat/primitives/serialization/base.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives/serialization
      copying src/cryptography/hazmat/primitives/serialization/ssh.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives/serialization
      copying src/cryptography/hazmat/primitives/serialization/pkcs12.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives/serialization
      copying src/cryptography/hazmat/primitives/serialization/__init__.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives/serialization
      copying src/cryptography/hazmat/primitives/serialization/pkcs7.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives/serialization
      creating build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives/twofactor
      copying src/cryptography/hazmat/primitives/twofactor/hotp.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives/twofactor
      copying src/cryptography/hazmat/primitives/twofactor/__init__.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives/twofactor
      copying src/cryptography/hazmat/primitives/twofactor/totp.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives/twofactor
      creating build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives/ciphers
      copying src/cryptography/hazmat/primitives/ciphers/aead.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives/ciphers
      copying src/cryptography/hazmat/primitives/ciphers/base.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives/ciphers
      copying src/cryptography/hazmat/primitives/ciphers/__init__.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives/ciphers
      copying src/cryptography/hazmat/primitives/ciphers/modes.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives/ciphers
      copying src/cryptography/hazmat/primitives/ciphers/algorithms.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives/ciphers
      creating build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives/asymmetric
      copying src/cryptography/hazmat/primitives/asymmetric/dh.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives/asymmetric
      copying src/cryptography/hazmat/primitives/asymmetric/dsa.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives/asymmetric
      copying src/cryptography/hazmat/primitives/asymmetric/ed25519.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives/asymmetric
      copying src/cryptography/hazmat/primitives/asymmetric/ed448.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives/asymmetric
      copying src/cryptography/hazmat/primitives/asymmetric/utils.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives/asymmetric
      copying src/cryptography/hazmat/primitives/asymmetric/x25519.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives/asymmetric
      copying src/cryptography/hazmat/primitives/asymmetric/__init__.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives/asymmetric
      copying src/cryptography/hazmat/primitives/asymmetric/rsa.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives/asymmetric
      copying src/cryptography/hazmat/primitives/asymmetric/ec.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives/asymmetric
      copying src/cryptography/hazmat/primitives/asymmetric/types.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives/asymmetric
      copying src/cryptography/hazmat/primitives/asymmetric/x448.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives/asymmetric
      copying src/cryptography/hazmat/primitives/asymmetric/padding.py -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/primitives/asymmetric
      running egg_info
      writing src/cryptography.egg-info/PKG-INFO
      writing dependency_links to src/cryptography.egg-info/dependency_links.txt
      writing requirements to src/cryptography.egg-info/requires.txt
      writing top-level names to src/cryptography.egg-info/top_level.txt
      reading manifest file 'src/cryptography.egg-info/SOURCES.txt'
      reading manifest template 'MANIFEST.in'
      no previously-included directories found matching 'docs/_build'
      warning: no previously-included files found matching 'vectors'
      warning: no previously-included files matching '*' found under directory 'vectors'
      warning: no previously-included files matching '*' found under directory '.github'
      warning: no previously-included files found matching 'release.py'
      warning: no previously-included files found matching '.readthedocs.yml'
      warning: no previously-included files found matching 'ci-constraints-requirements.txt'
      warning: no previously-included files found matching 'mypy.ini'
      adding license file 'LICENSE'
      adding license file 'LICENSE.APACHE'
      adding license file 'LICENSE.BSD'
      adding license file 'LICENSE.PSF'
      writing manifest file 'src/cryptography.egg-info/SOURCES.txt'
      /tmp/pip-build-env-igupn6ig/overlay/lib/python3.9/site-packages/setuptools/command/build_py.py:201: _Warning: Package 'cryptography.hazmat.bindings._rust' is absent from the `packages` configuration.
      !!

              ********************************************************************************
              ############################
              # Package would be ignored #
              ############################
              Python recognizes 'cryptography.hazmat.bindings._rust' as an importable package[^1],
              but it is absent from setuptools' `packages` configuration.

              This leads to an ambiguous overall configuration. If you want to distribute this
              package, please make sure that 'cryptography.hazmat.bindings._rust' is explicitly added
              to the `packages` configuration field.

              Alternatively, you can also rely on setuptools' discovery methods
              (for example by using `find_namespace_packages(...)`/`find_namespace:`
              instead of `find_packages(...)`/`find:`).

              You can read more about "package discovery" on setuptools documentation page:

              - https://setuptools.pypa.io/en/latest/userguide/package_discovery.html

              If you don't want 'cryptography.hazmat.bindings._rust' to be distributed and are
              already explicitly excluding 'cryptography.hazmat.bindings._rust' via
              `find_namespace_packages(...)/find_namespace` or `find_packages(...)/find`,
              you can try to use `exclude_package_data`, or `include-package-data=False` in
              combination with a more fine grained `package-data` configuration.

              You can read more about "package data files" on setuptools documentation page:

              - https://setuptools.pypa.io/en/latest/userguide/datafiles.html


              [^1]: For Python, any directory (with suitable naming) can be imported,
                    even if it does not contain any `.py` files.
                    On the other hand, currently there is no concept of package data
                    directory, all directories are treated like packages.
              ********************************************************************************

      !!
        check.warn(importable)
      /tmp/pip-build-env-igupn6ig/overlay/lib/python3.9/site-packages/setuptools/command/build_py.py:201: _Warning: Package 'cryptography.hazmat.bindings._rust.openssl' is absent from the `packages` configuration.
      !!

              ********************************************************************************
              ############################
              # Package would be ignored #
              ############################
              Python recognizes 'cryptography.hazmat.bindings._rust.openssl' as an importable package[^1],
              but it is absent from setuptools' `packages` configuration.

              This leads to an ambiguous overall configuration. If you want to distribute this
              package, please make sure that 'cryptography.hazmat.bindings._rust.openssl' is explicitly added
              to the `packages` configuration field.

              Alternatively, you can also rely on setuptools' discovery methods
              (for example by using `find_namespace_packages(...)`/`find_namespace:`
              instead of `find_packages(...)`/`find:`).

              You can read more about "package discovery" on setuptools documentation page:

              - https://setuptools.pypa.io/en/latest/userguide/package_discovery.html

              If you don't want 'cryptography.hazmat.bindings._rust.openssl' to be distributed and are
              already explicitly excluding 'cryptography.hazmat.bindings._rust.openssl' via
              `find_namespace_packages(...)/find_namespace` or `find_packages(...)/find`,
              you can try to use `exclude_package_data`, or `include-package-data=False` in
              combination with a more fine grained `package-data` configuration.

              You can read more about "package data files" on setuptools documentation page:

              - https://setuptools.pypa.io/en/latest/userguide/datafiles.html


              [^1]: For Python, any directory (with suitable naming) can be imported,
                    even if it does not contain any `.py` files.
                    On the other hand, currently there is no concept of package data
                    directory, all directories are treated like packages.
              ********************************************************************************

      !!
        check.warn(importable)
      copying src/cryptography/py.typed -> build/lib.linux-armv7l-cpython-39/cryptography
      creating build/lib.linux-armv7l-cpython-39/cryptography/hazmat/bindings/_rust
      copying src/cryptography/hazmat/bindings/_rust/__init__.pyi -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/bindings/_rust
      copying src/cryptography/hazmat/bindings/_rust/_openssl.pyi -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/bindings/_rust
      copying src/cryptography/hazmat/bindings/_rust/asn1.pyi -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/bindings/_rust
      copying src/cryptography/hazmat/bindings/_rust/ocsp.pyi -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/bindings/_rust
      copying src/cryptography/hazmat/bindings/_rust/pkcs7.pyi -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/bindings/_rust
      copying src/cryptography/hazmat/bindings/_rust/x509.pyi -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/bindings/_rust
      creating build/lib.linux-armv7l-cpython-39/cryptography/hazmat/bindings/_rust/openssl
      copying src/cryptography/hazmat/bindings/_rust/openssl/__init__.pyi -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/bindings/_rust/openssl
      copying src/cryptography/hazmat/bindings/_rust/openssl/x25519.pyi -> build/lib.linux-armv7l-cpython-39/cryptography/hazmat/bindings/_rust/openssl
      running build_ext
      running build_rust

          =============================DEBUG ASSISTANCE=============================
          If you are seeing a compilation error please try the following steps to
          successfully install cryptography:
          1) Upgrade to the latest pip and try again. This will fix errors for most
             users. See: https://pip.pypa.io/en/stable/installing/#upgrading-pip
          2) Read https://cryptography.io/en/latest/installation/ for specific
             instructions for your platform.
          3) Check our frequently asked questions for more information:
             https://cryptography.io/en/latest/faq/
          4) Ensure you have a recent Rust toolchain installed:
             https://cryptography.io/en/latest/installation/#rust

          Python: 3.9.2
          platform: Linux-5.15.84-v7l+-armv7l-with-glibc2.31
          pip: n/a
          setuptools: 67.7.2
          setuptools_rust: 1.6.0
          rustc: n/a
          =============================DEBUG ASSISTANCE=============================

      error: can't find Rust compiler

      If you are using an outdated pip version, it is possible a prebuilt wheel is available for this package but pip is not able to install from it. Installing from the wheel would avoid the need for a Rust compiler.

      To update pip, run:

          pip install --upgrade pip

      and then retry package installation.

      If you did intend to build this package from source, try installing a Rust compiler from your system package manager and ensure it is on the PATH during installation. Alternatively, rustup (available at https://rustup.rs) is the recommended way to download and update the Rust compiler toolchain.

      This package requires Rust >=1.48.0.
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for cryptography
Failed to build cffi cryptography
ERROR: Could not build wheels for cffi, cryptography, which is required to install pyproject.toml-based projects
Traceback (most recent call last):
  File "/home/pi/inverter-connect/.venv/bin/pip-sync", line 8, in <module>
    sys.exit(cli())
  File "/home/pi/inverter-connect/.venv/lib/python3.9/site-packages/click/core.py", line 1130, in __call__
    return self.main(*args, **kwargs)
  File "/home/pi/inverter-connect/.venv/lib/python3.9/site-packages/click/core.py", line 1055, in main
    rv = self.invoke(ctx)
  File "/home/pi/inverter-connect/.venv/lib/python3.9/site-packages/click/core.py", line 1404, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/pi/inverter-connect/.venv/lib/python3.9/site-packages/click/core.py", line 760, in invoke
    return __callback(*args, **kwargs)
  File "/home/pi/inverter-connect/.venv/lib/python3.9/site-packages/piptools/scripts/sync.py", line 174, in cli
    sync.sync(
  File "/home/pi/inverter-connect/.venv/lib/python3.9/site-packages/piptools/sync.py", line 244, in sync
    run(  # nosec
  File "/usr/lib/python3.9/subprocess.py", line 528, in run
    raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['/home/pi/inverter-connect/.venv/bin/python', '-m', 'pip', 'install', '-r', '/tmp/tmpg8jq1fkz', '--extra-index-url', 'https://www.piwheels.org/simple']' returned non-zero exit status 1.
Traceback (most recent call last):
  File "/home/pi/inverter-connect/./cli.py", line 115, in <module>
    main(sys.argv)
  File "/home/pi/inverter-connect/./cli.py", line 101, in main
    verbose_check_call(PIP_SYNC_PATH, str(DEP_LOCK_PATH))
  File "/home/pi/inverter-connect/./cli.py", line 81, in verbose_check_call
    return subprocess.check_call(popen_args)
  File "/usr/lib/python3.9/subprocess.py", line 373, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '(PosixPath('/home/pi/inverter-connect/.venv/bin/pip-sync'), '/home/pi/inverter-connect/requirements.dev.txt')' returned non-zero exit status 1.

from inverter-connect.

jedie avatar jedie commented on June 12, 2024

Hm. Rust toolchain is neede, because requirements.dev.txt is installed. We have to split the normal use case. So i made #22 for this.

Your output suggest that "cryptography" needs Rust. But on my Pi i haven't Rust installed.

Think the trick is to enable https://www.piwheels.org/
Just create the file /etc/pip.conf with the content:

[global]
extra-index-url=https://www.piwheels.org/simple

Think i should add this to README

from inverter-connect.

giovanne123 avatar giovanne123 commented on June 12, 2024

FYI, on my Pi already exists.
image

Btw: in addition I don't want to modify python directly on my OS-level to prevent other stuff stop working ;-)

from inverter-connect.

jedie avatar jedie commented on June 12, 2024

FYI, on my Pi already exists.

Hm. Sad.
Than i don't know what's the difference between plain Raspian and my dietpi installation :(

Btw: in addition I don't want to modify python directly on my OS-level to prevent other stuff stop working ;-)

That's why the script creates and used a python virtualenv ;)

from inverter-connect.

jedie avatar jedie commented on June 12, 2024

@AlfonsSchmid @giovanne123 I started to tackle #22 in #23

EDIT: It was less work than expected and done! So we have two CLI scripts. One for usage and one for development. And only the development cli will install the problematic python packages!

So, please pull the last main branch and try again, just by call: ./cli.py --help on your Pi.

from inverter-connect.

jedie avatar jedie commented on June 12, 2024

dev-cli.py ist only needed for developers 😉

from inverter-connect.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.