Error on install #3

Closed
opened 2026-10-27 09:28:06 +01:00 by adam · 1 comment
Owner

Hi there, i just found ur project, im trying to install on a raspberry pi Zero w/ waveshare hat.

i just flashed a brand new pi image and ran sudo apt-get update && sudo apt-get upgrade

im pasting the instalation log so you can figure out whats wrong

tesso@meshcore:~/pyMC_Repeater $ sudo bash deploy.sh
=== pyMC Repeater Deployment ===
Adding repeater to hardware groups...
Creating directories...
Installing files...
Installing configuration...
Existing config file found, keeping it.

=== Radio Configuration Setup ===
Would you like to configure radio settings from community presets? (y/n) y
=== pyMC Repeater Radio Configuration ===

=== Step 0: Set Repeater Name ===

Enter repeater name [auburn-repeater] (press Enter to keep):
Repeater name: auburn-repeater

=== Step 1: Select Hardware ===

  1. Waveshare LoRa HAT (waveshare)
  2. uConsole LoRa Module (uconsole)
  3. MeshAdv Mini (meshadv-mini)
  4. MeshAdv (meshadv)

Select hardware (1-4): 1
Selected: Waveshare LoRa HAT

=== Step 2: Select Radio Settings ===

Fetching radio settings from API...
Available Radio Settings:

  1. Australia ----> 915.800MHz / SF10 / BW250 / CR5
  2. Australia: Victoria ----> 916.575MHz / SF7 / BW62.5 / CR8
  3. EU/UK (Narrow) ----> 869.618MHz / SF8 / BW62.5 / CR8
  4. EU/UK (Long Range) ----> 869.525MHz / SF11 / BW250 / CR5
  5. EU/UK (Medium Range) ----> 869.525MHz / SF10 / BW250 / CR5
  6. Czech Republic (Narrow) ----> 869.525MHz / SF7 / BW62.5 / CR5
  7. EU 433MHz (Long Range) ----> 433.650MHz / SF11 / BW250 / CR5
  8. New Zealand ----> 917.375MHz / SF11 / BW250 / CR5
  9. New Zealand (Narrow) ----> 917.375MHz / SF7 / BW62.5 / CR5
  10. Portugal 433 ----> 433.375MHz / SF9 / BW62.5 / CR6
  11. Portugal 868 ----> 869.618MHz / SF7 / BW62.5 / CR6
  12. Switzerland ----> 869.618MHz / SF8 / BW62.5 / CR8
  13. USA/Canada (Recommended) ----> 910.525MHz / SF7 / BW62.5 / CR5
  14. USA/Canada (Deprecated) ----> 910.525MHz / SF11 / BW250 / CR5
  15. Vietnam ----> 920.250MHz / SF11 / BW250 / CR5

Select a radio setting (1-15): 13

Selected: USA/Canada (Recommended)
Frequency: 910.525MHz, SF: 7, BW: 62.5, CR: 5

Updating configuration...
Extracting hardware configuration from /home/tesso/pyMC_Repeater/radio-settings.json...
Configuration updated successfully!

Applied Configuration:
Repeater Name: auburn-repeater
Hardware: Waveshare LoRa HAT (waveshare)
Frequency: 910.525MHz (910525000Hz)
Spreading Factor: 7
Bandwidth: 62.5kHz (62500Hz)
Coding Rate: 5

Hardware GPIO Configuration:
Bus ID: 0
Chip Select: 0 (pin 21)
Reset Pin: 18
Busy Pin: 20
IRQ Pin: 16
TX Enable Pin: 13
RX Enable Pin: 12
TX Power: 22 dBm
Preamble Length: 17
Waveshare: true

Enabling and starting the pymc-repeater service...
Created symlink '/etc/systemd/system/multi-user.target.wants/pymc-repeater.service' → '/etc/systemd/system/pymc-repeater.service'.
Setup complete. Please check the service status with 'systemctl status pymc-repeater'.
Installing systemd service...
Setting permissions...
Installing Python package...
Obtaining file:///opt/pymc_repeater
Installing build dependencies ... done
Checking if build backend supports build_editable ... done
Getting requirements to build editable ... done
Preparing editable metadata (pyproject.toml) ... done
Collecting pymc_core>=1.0.4 (from pymc_core[hardware]>=1.0.4->pymc_repeater==1.0.3)
Using cached pymc_core-1.0.4-py3-none-any.whl.metadata (8.8 kB)
Requirement already satisfied: pyyaml>=6.0.0 in /usr/lib/python3/dist-packages (from pymc_repeater==1.0.3) (6.0.2)
Collecting cherrypy>=18.0.0 (from pymc_repeater==1.0.3)
Using cached CherryPy-18.10.0-py3-none-any.whl.metadata (8.7 kB)
Collecting cheroot>=8.2.1 (from cherrypy>=18.0.0->pymc_repeater==1.0.3)
Using cached cheroot-11.1.2-py3-none-any.whl.metadata (7.0 kB)
Collecting portend>=2.1.1 (from cherrypy>=18.0.0->pymc_repeater==1.0.3)
Using cached portend-3.2.1-py3-none-any.whl.metadata (4.1 kB)
Requirement already satisfied: more-itertools in /usr/lib/python3/dist-packages (from cherrypy>=18.0.0->pymc_repeater==1.0.3) (10.7.0)
Collecting zc.lockfile (from cherrypy>=18.0.0->pymc_repeater==1.0.3)
Using cached zc_lockfile-4.0-py3-none-any.whl.metadata (6.6 kB)
Collecting jaraco.collections (from cherrypy>=18.0.0->pymc_repeater==1.0.3)
Using cached jaraco_collections-5.2.1-py3-none-any.whl.metadata (3.9 kB)
Requirement already satisfied: jaraco.functools in /usr/lib/python3/dist-packages (from cheroot>=8.2.1->cherrypy>=18.0.0->pymc_repeater==1.0.3) (4.1.0)
Collecting tempora>=1.8 (from portend>=2.1.1->cherrypy>=18.0.0->pymc_repeater==1.0.3)
Using cached tempora-5.8.1-py3-none-any.whl.metadata (3.3 kB)
Collecting pycryptodome>=3.23.0 (from pymc_core>=1.0.4->pymc_core[hardware]>=1.0.4->pymc_repeater==1.0.3)
Using cached pycryptodome-3.23.0.tar.gz (4.9 MB)
Installing build dependencies ... done
Getting requirements to build wheel ... done
Preparing metadata (pyproject.toml) ... done
Collecting PyNaCl>=1.5.0 (from pymc_core>=1.0.4->pymc_core[hardware]>=1.0.4->pymc_repeater==1.0.3)
Using cached pynacl-1.6.1.tar.gz (3.5 MB)
Installing build dependencies ... error
error: subprocess-exited-with-error

× pip subprocess to install build dependencies did not run successfully.
│ exit code: 1
╰─> [98 lines of output]
Ignoring cffi: markers 'platform_python_implementation != "PyPy" and python_version < "3.9"' don't match your environment
Collecting setuptools!=74.0.0,>=61.0.0
Using cached setuptools-80.9.0-py3-none-any.whl.metadata (6.6 kB)
Collecting wheel
Using cached wheel-0.45.1-py3-none-any.whl.metadata (2.3 kB)
Collecting cffi>=2.0.0
Using cached cffi-2.0.0.tar.gz (523 kB)
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'
Collecting pycparser (from cffi>=2.0.0)
Using cached pycparser-2.23-py3-none-any.whl.metadata (993 bytes)
Using cached setuptools-80.9.0-py3-none-any.whl (1.2 MB)
Using cached wheel-0.45.1-py3-none-any.whl (72 kB)
Using cached pycparser-2.23-py3-none-any.whl (118 kB)
Building wheels for collected packages: cffi
Building wheel for cffi (pyproject.toml): started
Building wheel for cffi (pyproject.toml): finished with status 'error'
error: subprocess-exited-with-error

    × Building wheel for cffi (pyproject.toml) did not run successfully.
    │ exit code: 1
    ╰─> [66 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
        Package 'libffi', required by 'virtual:world', not 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
        Package 'libffi', required by 'virtual:world', not 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
        Package 'libffi', required by 'virtual:world', not 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
        Package 'libffi', required by 'virtual:world', not 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
        Package 'libffi', required by 'virtual:world', not found
        running bdist_wheel
        running build
        running build_py
        creating build/lib.linux-armv6l-cpython-313/cffi
        copying src/cffi/verifier.py -> build/lib.linux-armv6l-cpython-313/cffi
        copying src/cffi/vengine_gen.py -> build/lib.linux-armv6l-cpython-313/cffi
        copying src/cffi/vengine_cpy.py -> build/lib.linux-armv6l-cpython-313/cffi
        copying src/cffi/setuptools_ext.py -> build/lib.linux-armv6l-cpython-313/cffi
        copying src/cffi/recompiler.py -> build/lib.linux-armv6l-cpython-313/cffi
        copying src/cffi/pkgconfig.py -> build/lib.linux-armv6l-cpython-313/cffi
        copying src/cffi/model.py -> build/lib.linux-armv6l-cpython-313/cffi
        copying src/cffi/lock.py -> build/lib.linux-armv6l-cpython-313/cffi
        copying src/cffi/ffiplatform.py -> build/lib.linux-armv6l-cpython-313/cffi
        copying src/cffi/error.py -> build/lib.linux-armv6l-cpython-313/cffi
        copying src/cffi/cparser.py -> build/lib.linux-armv6l-cpython-313/cffi
        copying src/cffi/commontypes.py -> build/lib.linux-armv6l-cpython-313/cffi
        copying src/cffi/cffi_opcode.py -> build/lib.linux-armv6l-cpython-313/cffi
        copying src/cffi/backend_ctypes.py -> build/lib.linux-armv6l-cpython-313/cffi
        copying src/cffi/api.py -> build/lib.linux-armv6l-cpython-313/cffi
        copying src/cffi/_shimmed_dist_utils.py -> build/lib.linux-armv6l-cpython-313/cffi
        copying src/cffi/_imp_emulation.py -> build/lib.linux-armv6l-cpython-313/cffi
        copying src/cffi/__init__.py -> build/lib.linux-armv6l-cpython-313/cffi
        running egg_info
        writing src/cffi.egg-info/PKG-INFO
        writing dependency_links to src/cffi.egg-info/dependency_links.txt
        writing entry points to src/cffi.egg-info/entry_points.txt
        writing requirements to src/cffi.egg-info/requires.txt
        writing top-level names to src/cffi.egg-info/top_level.txt
        reading manifest file 'src/cffi.egg-info/SOURCES.txt'
        reading manifest template 'MANIFEST.in'
        adding license file 'LICENSE'
        adding license file 'AUTHORS'
        writing manifest file 'src/cffi.egg-info/SOURCES.txt'
        copying src/cffi/_cffi_errors.h -> build/lib.linux-armv6l-cpython-313/cffi
        copying src/cffi/_cffi_include.h -> build/lib.linux-armv6l-cpython-313/cffi
        copying src/cffi/_embedding.h -> build/lib.linux-armv6l-cpython-313/cffi
        copying src/cffi/parse_c_type.h -> build/lib.linux-armv6l-cpython-313/cffi
        running build_ext
        building '_cffi_backend' extension
        creating build/temp.linux-armv6l-cpython-313/src/c
        arm-linux-gnueabihf-gcc -fno-strict-overflow -Wsign-compare -DNDEBUG -g -O2 -Wall -fPIC -DFFI_BUILDING=1 -DUSE__THREAD -DHAVE_SYNC_SYNCHRONIZE -I/usr/include/ffi -I/usr/include/libffi -I/usr/include/python3.13 -c src/c/_cffi_backend.c -o build/temp.linux-armv6l-cpython-313/src/c/_cffi_backend.o
        src/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
  Failed to build cffi
  ERROR: Failed to build installable wheels for some pyproject.toml based projects (cffi)
  [end of output]

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

× pip subprocess to install build dependencies did not run successfully.
│ exit code: 1
╰─> See above for output.

note: This error originates from a subprocess, and is likely not a problem with pip.
tesso@meshcore:~/pyMC_Repeater $

Hi there, i just found ur project, im trying to install on a raspberry pi Zero w/ waveshare hat. i just flashed a brand new pi image and ran sudo apt-get update && sudo apt-get upgrade im pasting the instalation log so you can figure out whats wrong tesso@meshcore:~/pyMC_Repeater $ sudo bash deploy.sh === pyMC Repeater Deployment === Adding repeater to hardware groups... Creating directories... Installing files... Installing configuration... Existing config file found, keeping it. === Radio Configuration Setup === Would you like to configure radio settings from community presets? (y/n) y === pyMC Repeater Radio Configuration === === Step 0: Set Repeater Name === Enter repeater name [auburn-repeater] (press Enter to keep): Repeater name: auburn-repeater === Step 1: Select Hardware === 1) Waveshare LoRa HAT (waveshare) 2) uConsole LoRa Module (uconsole) 3) MeshAdv Mini (meshadv-mini) 4) MeshAdv (meshadv) Select hardware (1-4): 1 Selected: Waveshare LoRa HAT === Step 2: Select Radio Settings === Fetching radio settings from API... Available Radio Settings: 1) Australia ----> 915.800MHz / SF10 / BW250 / CR5 2) Australia: Victoria ----> 916.575MHz / SF7 / BW62.5 / CR8 3) EU/UK (Narrow) ----> 869.618MHz / SF8 / BW62.5 / CR8 4) EU/UK (Long Range) ----> 869.525MHz / SF11 / BW250 / CR5 5) EU/UK (Medium Range) ----> 869.525MHz / SF10 / BW250 / CR5 6) Czech Republic (Narrow) ----> 869.525MHz / SF7 / BW62.5 / CR5 7) EU 433MHz (Long Range) ----> 433.650MHz / SF11 / BW250 / CR5 8) New Zealand ----> 917.375MHz / SF11 / BW250 / CR5 9) New Zealand (Narrow) ----> 917.375MHz / SF7 / BW62.5 / CR5 10) Portugal 433 ----> 433.375MHz / SF9 / BW62.5 / CR6 11) Portugal 868 ----> 869.618MHz / SF7 / BW62.5 / CR6 12) Switzerland ----> 869.618MHz / SF8 / BW62.5 / CR8 13) USA/Canada (Recommended) ----> 910.525MHz / SF7 / BW62.5 / CR5 14) USA/Canada (Deprecated) ----> 910.525MHz / SF11 / BW250 / CR5 15) Vietnam ----> 920.250MHz / SF11 / BW250 / CR5 Select a radio setting (1-15): 13 Selected: USA/Canada (Recommended) Frequency: 910.525MHz, SF: 7, BW: 62.5, CR: 5 Updating configuration... Extracting hardware configuration from /home/tesso/pyMC_Repeater/radio-settings.json... Configuration updated successfully! Applied Configuration: Repeater Name: auburn-repeater Hardware: Waveshare LoRa HAT (waveshare) Frequency: 910.525MHz (910525000Hz) Spreading Factor: 7 Bandwidth: 62.5kHz (62500Hz) Coding Rate: 5 Hardware GPIO Configuration: Bus ID: 0 Chip Select: 0 (pin 21) Reset Pin: 18 Busy Pin: 20 IRQ Pin: 16 TX Enable Pin: 13 RX Enable Pin: 12 TX Power: 22 dBm Preamble Length: 17 Waveshare: true Enabling and starting the pymc-repeater service... Created symlink '/etc/systemd/system/multi-user.target.wants/pymc-repeater.service' → '/etc/systemd/system/pymc-repeater.service'. Setup complete. Please check the service status with 'systemctl status pymc-repeater'. Installing systemd service... Setting permissions... Installing Python package... Obtaining file:///opt/pymc_repeater Installing build dependencies ... done Checking if build backend supports build_editable ... done Getting requirements to build editable ... done Preparing editable metadata (pyproject.toml) ... done Collecting pymc_core>=1.0.4 (from pymc_core[hardware]>=1.0.4->pymc_repeater==1.0.3) Using cached pymc_core-1.0.4-py3-none-any.whl.metadata (8.8 kB) Requirement already satisfied: pyyaml>=6.0.0 in /usr/lib/python3/dist-packages (from pymc_repeater==1.0.3) (6.0.2) Collecting cherrypy>=18.0.0 (from pymc_repeater==1.0.3) Using cached CherryPy-18.10.0-py3-none-any.whl.metadata (8.7 kB) Collecting cheroot>=8.2.1 (from cherrypy>=18.0.0->pymc_repeater==1.0.3) Using cached cheroot-11.1.2-py3-none-any.whl.metadata (7.0 kB) Collecting portend>=2.1.1 (from cherrypy>=18.0.0->pymc_repeater==1.0.3) Using cached portend-3.2.1-py3-none-any.whl.metadata (4.1 kB) Requirement already satisfied: more-itertools in /usr/lib/python3/dist-packages (from cherrypy>=18.0.0->pymc_repeater==1.0.3) (10.7.0) Collecting zc.lockfile (from cherrypy>=18.0.0->pymc_repeater==1.0.3) Using cached zc_lockfile-4.0-py3-none-any.whl.metadata (6.6 kB) Collecting jaraco.collections (from cherrypy>=18.0.0->pymc_repeater==1.0.3) Using cached jaraco_collections-5.2.1-py3-none-any.whl.metadata (3.9 kB) Requirement already satisfied: jaraco.functools in /usr/lib/python3/dist-packages (from cheroot>=8.2.1->cherrypy>=18.0.0->pymc_repeater==1.0.3) (4.1.0) Collecting tempora>=1.8 (from portend>=2.1.1->cherrypy>=18.0.0->pymc_repeater==1.0.3) Using cached tempora-5.8.1-py3-none-any.whl.metadata (3.3 kB) Collecting pycryptodome>=3.23.0 (from pymc_core>=1.0.4->pymc_core[hardware]>=1.0.4->pymc_repeater==1.0.3) Using cached pycryptodome-3.23.0.tar.gz (4.9 MB) Installing build dependencies ... done Getting requirements to build wheel ... done Preparing metadata (pyproject.toml) ... done Collecting PyNaCl>=1.5.0 (from pymc_core>=1.0.4->pymc_core[hardware]>=1.0.4->pymc_repeater==1.0.3) Using cached pynacl-1.6.1.tar.gz (3.5 MB) Installing build dependencies ... error error: subprocess-exited-with-error × pip subprocess to install build dependencies did not run successfully. │ exit code: 1 ╰─> [98 lines of output] Ignoring cffi: markers 'platform_python_implementation != "PyPy" and python_version < "3.9"' don't match your environment Collecting setuptools!=74.0.0,>=61.0.0 Using cached setuptools-80.9.0-py3-none-any.whl.metadata (6.6 kB) Collecting wheel Using cached wheel-0.45.1-py3-none-any.whl.metadata (2.3 kB) Collecting cffi>=2.0.0 Using cached cffi-2.0.0.tar.gz (523 kB) 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' Collecting pycparser (from cffi>=2.0.0) Using cached pycparser-2.23-py3-none-any.whl.metadata (993 bytes) Using cached setuptools-80.9.0-py3-none-any.whl (1.2 MB) Using cached wheel-0.45.1-py3-none-any.whl (72 kB) Using cached pycparser-2.23-py3-none-any.whl (118 kB) Building wheels for collected packages: cffi Building wheel for cffi (pyproject.toml): started Building wheel for cffi (pyproject.toml): finished with status 'error' error: subprocess-exited-with-error × Building wheel for cffi (pyproject.toml) did not run successfully. │ exit code: 1 ╰─> [66 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 Package 'libffi', required by 'virtual:world', not 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 Package 'libffi', required by 'virtual:world', not 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 Package 'libffi', required by 'virtual:world', not 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 Package 'libffi', required by 'virtual:world', not 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 Package 'libffi', required by 'virtual:world', not found running bdist_wheel running build running build_py creating build/lib.linux-armv6l-cpython-313/cffi copying src/cffi/verifier.py -> build/lib.linux-armv6l-cpython-313/cffi copying src/cffi/vengine_gen.py -> build/lib.linux-armv6l-cpython-313/cffi copying src/cffi/vengine_cpy.py -> build/lib.linux-armv6l-cpython-313/cffi copying src/cffi/setuptools_ext.py -> build/lib.linux-armv6l-cpython-313/cffi copying src/cffi/recompiler.py -> build/lib.linux-armv6l-cpython-313/cffi copying src/cffi/pkgconfig.py -> build/lib.linux-armv6l-cpython-313/cffi copying src/cffi/model.py -> build/lib.linux-armv6l-cpython-313/cffi copying src/cffi/lock.py -> build/lib.linux-armv6l-cpython-313/cffi copying src/cffi/ffiplatform.py -> build/lib.linux-armv6l-cpython-313/cffi copying src/cffi/error.py -> build/lib.linux-armv6l-cpython-313/cffi copying src/cffi/cparser.py -> build/lib.linux-armv6l-cpython-313/cffi copying src/cffi/commontypes.py -> build/lib.linux-armv6l-cpython-313/cffi copying src/cffi/cffi_opcode.py -> build/lib.linux-armv6l-cpython-313/cffi copying src/cffi/backend_ctypes.py -> build/lib.linux-armv6l-cpython-313/cffi copying src/cffi/api.py -> build/lib.linux-armv6l-cpython-313/cffi copying src/cffi/_shimmed_dist_utils.py -> build/lib.linux-armv6l-cpython-313/cffi copying src/cffi/_imp_emulation.py -> build/lib.linux-armv6l-cpython-313/cffi copying src/cffi/__init__.py -> build/lib.linux-armv6l-cpython-313/cffi running egg_info writing src/cffi.egg-info/PKG-INFO writing dependency_links to src/cffi.egg-info/dependency_links.txt writing entry points to src/cffi.egg-info/entry_points.txt writing requirements to src/cffi.egg-info/requires.txt writing top-level names to src/cffi.egg-info/top_level.txt reading manifest file 'src/cffi.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' adding license file 'LICENSE' adding license file 'AUTHORS' writing manifest file 'src/cffi.egg-info/SOURCES.txt' copying src/cffi/_cffi_errors.h -> build/lib.linux-armv6l-cpython-313/cffi copying src/cffi/_cffi_include.h -> build/lib.linux-armv6l-cpython-313/cffi copying src/cffi/_embedding.h -> build/lib.linux-armv6l-cpython-313/cffi copying src/cffi/parse_c_type.h -> build/lib.linux-armv6l-cpython-313/cffi running build_ext building '_cffi_backend' extension creating build/temp.linux-armv6l-cpython-313/src/c arm-linux-gnueabihf-gcc -fno-strict-overflow -Wsign-compare -DNDEBUG -g -O2 -Wall -fPIC -DFFI_BUILDING=1 -DUSE__THREAD -DHAVE_SYNC_SYNCHRONIZE -I/usr/include/ffi -I/usr/include/libffi -I/usr/include/python3.13 -c src/c/_cffi_backend.c -o build/temp.linux-armv6l-cpython-313/src/c/_cffi_backend.o src/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 Failed to build cffi ERROR: Failed to build installable wheels for some pyproject.toml based projects (cffi) [end of output] note: This error originates from a subprocess, and is likely not a problem with pip. error: subprocess-exited-with-error × pip subprocess to install build dependencies did not run successfully. │ exit code: 1 ╰─> See above for output. note: This error originates from a subprocess, and is likely not a problem with pip. tesso@meshcore:~/pyMC_Repeater $ <!-- github-sync-id:3618462537 -->
adam closed this issue 2026-10-27 09:28:06 +01:00
Author
Owner

Install libffi-dev:

sudo apt install libffi-dev

Then run the deploy.sh script again and it should complete

Install libffi-dev: `sudo apt install libffi-dev` Then run the `deploy.sh` script again and it should complete <!-- github-comment-id:3524211511 -->
Sign in to join this conversation.
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: adam/pyMC_Repeater#3