rm-hull / luma.examples

Companion repo for running examples against the luma.oled, luma.lcd, luma.led_matrix and luma.emulator display drivers.
MIT License
367 stars 140 forks source link

Error running: sudo -H pip install -e . #151

Closed SmokeyOdin closed 2 years ago

SmokeyOdin commented 2 years ago

Followed the steps on a clean install of Raspberry Pi OS Lite and got to the "sudo -H pip install -e ." command and get this error message:

(https://pastebin.com/XBxeLNjE):

Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Obtaining file:///home/pi/luma.examples
Collecting argcomplete
  Using cached https://www.piwheels.org/simple/argcomplete/argcomplete-1.12.3-py2.py3-none-any.whl (38 kB)
Collecting luma.core>=1.17.1
  Using cached https://www.piwheels.org/simple/luma-core/luma.core-2.3.1-py2.py3-none-any.whl (71 kB)
Collecting luma.emulator>=1.3.0
  Using cached https://www.piwheels.org/simple/luma-emulator/luma.emulator-1.4.0-py2.py3-none-any.whl (27 kB)
Collecting luma.lcd>=2.5.0
  Using cached https://www.piwheels.org/simple/luma-lcd/luma.lcd-2.9.0-py2.py3-none-any.whl (25 kB)
Collecting luma.led_matrix>=1.5.0
  Using cached https://www.piwheels.org/simple/luma-led-matrix/luma.led_matrix-1.5.0-py2.py3-none-any.whl (19 kB)
Collecting luma.oled>=3.6.0
  Using cached https://www.piwheels.org/simple/luma-oled/luma.oled-3.8.1-py2.py3-none-any.whl (32 kB)
Requirement already satisfied: cbor2 in /usr/local/lib/python3.9/dist-packages (from luma.core>=1.17.1->luma.examples==0.0.0) (5.4.2)
Requirement already satisfied: pyftdi in /usr/local/lib/python3.9/dist-packages (from luma.core>=1.17.1->luma.examples==0.0.0) (0.53.3)
Requirement already satisfied: pillow>=4.0.0 in /usr/local/lib/python3.9/dist-packages (from luma.core>=1.17.1->luma.examples==0.0.0) (8.4.0)
Requirement already satisfied: deprecated in /usr/local/lib/python3.9/dist-packages (from luma.core>=1.17.1->luma.examples==0.0.0) (1.2.13)
Requirement already satisfied: spidev in /usr/lib/python3/dist-packages (from luma.core>=1.17.1->luma.examples==0.0.0) (3.5)
Requirement already satisfied: RPI.GPIO in /usr/lib/python3/dist-packages (from luma.core>=1.17.1->luma.examples==0.0.0) (0.7.0)
Requirement already satisfied: smbus2 in /usr/local/lib/python3.9/dist-packages (from luma.core>=1.17.1->luma.examples==0.0.0) (0.4.1)
Collecting pygame
  Using cached https://www.piwheels.org/simple/pygame/pygame-2.1.2-cp39-cp39-linux_armv7l.whl (8.9 MB)
Collecting ws2812
  Using cached ws2812-1.0.0.tar.gz (58 kB)
Collecting rpi-ws281x
  Using cached https://www.piwheels.org/simple/rpi-ws281x/rpi_ws281x-4.3.1-cp39-cp39-linux_armv7l.whl (117 kB)
Requirement already satisfied: wrapt<2,>=1.10 in /usr/local/lib/python3.9/dist-packages (from deprecated->luma.core>=1.17.1->luma.examples==0.0.0) (1.13.3)
Requirement already satisfied: pyusb!=1.2.0,>=1.0.0 in /usr/local/lib/python3.9/dist-packages (from pyftdi->luma.core>=1.17.1->luma.examples==0.0.0) (1.2.1)
Requirement already satisfied: pyserial>=3.0 in /usr/local/lib/python3.9/dist-packages (from pyftdi->luma.core>=1.17.1->luma.examples==0.0.0) (3.5)
Building wheels for collected packages: ws2812
  Building wheel for ws2812 (setup.py) ... error
  ERROR: Command errored out with exit status 1:
   command: /usr/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-s2avh39r/ws2812_a0e7526f29b5426d88cc79f76ebc9a10/setup.py'"'"'; __file__='"'"'/tmp/pip-install-s2avh39r/ws2812_a0e7526f29b5426d88cc79f76ebc9a10/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-0senyxj6
       cwd: /tmp/pip-install-s2avh39r/ws2812_a0e7526f29b5426d88cc79f76ebc9a10/
  Complete output (161 lines):
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.linux-armv7l-3.9
  copying ws2812.py -> build/lib.linux-armv7l-3.9
  running build_ext
  building '_ws2812' extension
  creating build/temp.linux-armv7l-3.9
  creating build/temp.linux-armv7l-3.9/lib
  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 -Ilib/ -I/usr/include/python3.9 -c lib/ws2812-RPi.c -o build/temp.linux-armv7l-3.9/lib/ws2812-RPi.o
  In file included from lib/ws2812-RPi.c:1:
  lib/ws2812-RPi.h:95:1: warning: multi-line comment [-Wcomment]
     95 | // |   |   |  \  \___|  |_|  |  / /_/ \  ___/ \___ \
        | ^
  In file included from lib/ws2812-RPi.c:1:
  lib/ws2812-RPi.h:123:1: warning: multi-line comment [-Wcomment]
    123 | //  |    `   \  ___/|  |  |  |   |  \  ___/ \___ \  /  <_\ \/   \     /  / __ \|  | \/\___ \
        | ^
  lib/ws2812-RPi.h:389:1: warning: multi-line comment [-Wcomment]
    389 | // |    |    \_   _____/\______ \    /   _____//  |_ __ ___/ ____\/ ____\
        | ^
  lib/ws2812-RPi.h:436:1: warning: multi-line comment [-Wcomment]
    436 | //  |    |  \_/ __ \| __ \|  |  \/ ___\
        | ^
  lib/ws2812-RPi.h:456:1: warning: multi-line comment [-Wcomment]
    456 | // |   |/    \|  \   __\ /    ~    \__  \\_  __ \/ __ |\ \/ \/ /\__  \\_  __ \_/ __ \
        | ^
  lib/ws2812-RPi.h:470:1: warning: multi-line comment [-Wcomment]
    470 | //  |    |  / |  |_> > /_/ | / __ \|  | \  ___/  |    |___  |        \ |    `   \\___ \
        | ^
  lib/ws2812-RPi.h:481:1: warning: multi-line comment [-Wcomment]
    481 | //  |        \|  |   |  | \  ___/\  \___|  |  \___ \
        | ^
  lib/ws2812-RPi.c: In function ‘reverseWord’:
  lib/ws2812-RPi.c:49:16: warning: variable ‘bit’ set but not used [-Wunused-but-set-variable]
     49 |  unsigned char bit;
        |                ^~~
  lib/ws2812-RPi.c: In function ‘mem_phys_to_virt’:
  lib/ws2812-RPi.c:119:16: warning: comparison of integer expressions of different signedness: ‘int’ and ‘unsigned int’ [-Wsign-compare]
    119 |  for (i = 0; i < NUM_PAGES; i++) {
        |                ^
  lib/ws2812-RPi.c: At top level:
  lib/ws2812-RPi.c:147:1: warning: multi-line comment [-Wcomment]
    147 | // |    |    \_   _____/\______ \    /   _____//  |_ __ ___/ ____\/ ____\
        | ^
  lib/ws2812-RPi.c:292:1: warning: multi-line comment [-Wcomment]
    292 | //  |    |  \_/ __ \| __ \|  |  \/ ___\
        | ^
  lib/ws2812-RPi.c:471:1: warning: multi-line comment [-Wcomment]
    471 | // |   |/    \|  \   __\ /    ~    \__  \\_  __ \/ __ |\ \/ \/ /\__  \\_  __ \_/ __ \
        | ^
  lib/ws2812-RPi.c: In function ‘initHardware’:
  lib/ws2812-RPi.c:552:56: warning: comparison of integer expressions of different signedness: ‘__off_t’ {aka ‘long int’} and ‘long unsigned int’ [-Wsign-compare]
    552 |  if (lseek(fd, (unsigned long)virtbase >> 9, SEEK_SET) != (unsigned long)virtbase >> 9) {
        |                                                        ^~
  lib/ws2812-RPi.c:557:16: warning: comparison of integer expressions of different signedness: ‘int’ and ‘unsigned int’ [-Wsign-compare]
    557 |  for (i = 0; i < NUM_PAGES; i++) {
        |                ^
  lib/ws2812-RPi.c:569:18: warning: suggest parentheses around comparison in operand of ‘&’ [-Wparentheses]
    569 |   if ((pfn >> 55)&0xfbf != 0x10c) {  // pagemap bits: https://www.kernel.org/doc/Documentation/vm/pagemap.txt
        |                  ^
  lib/ws2812-RPi.c: At top level:
  lib/ws2812-RPi.c:745:1: warning: multi-line comment [-Wcomment]
    745 | //  |    |  / |  |_> > /_/ | / __ \|  | \  ___/  |    |___  |        \ |    `   \\___ \
        | ^
  lib/ws2812-RPi.c: In function ‘show’:
  lib/ws2812-RPi.c:764:12: warning: comparison of integer expressions of different signedness: ‘int’ and ‘unsigned int’ [-Wsign-compare]
    764 |  for(i=0; i<numLEDs; i++) {
        |            ^
  lib/ws2812-RPi.c:801:15: warning: comparison of integer expressions of different signedness: ‘int’ and ‘unsigned int’ [-Wsign-compare]
    801 |  for(i = 0; i < (cbp->length / 4); i++) {
        |               ^
  lib/ws2812-RPi.c:829:1: warning: "/*" within comment [-Wcomment]
    829 | /**/
        |
  lib/ws2812-RPi.c:762:10: warning: unused variable ‘color’ [-Wunused-variable]
    762 |  Color_t color;
        |          ^~~~~
  lib/ws2812-RPi.c:758:15: warning: unused variable ‘PWMWaveformBitPos’ [-Wunused-variable]
    758 |  unsigned int PWMWaveformBitPos = 0;
        |               ^~~~~~~~~~~~~~~~~
  lib/ws2812-RPi.c:757:15: warning: unused variable ‘LEDBuffeWordPos’ [-Wunused-variable]
    757 |  unsigned int LEDBuffeWordPos = 0;
        |               ^~~~~~~~~~~~~~~
  lib/ws2812-RPi.c: At top level:
  lib/ws2812-RPi.c:839:1: warning: multi-line comment [-Wcomment]
    839 | //  |        \|  |   |  | \  ___/\  \___|  |  \___ \
        | ^
  lib/ws2812-RPi.c: In function ‘theaterChaseRainbow’:
  lib/ws2812-RPi.c:921:16: warning: comparison of integer expressions of different signedness: ‘int’ and ‘unsigned int’ [-Wsign-compare]
    921 |    for (i=0; i < numPixels(); i=i+3) {
        |                ^
  lib/ws2812-RPi.c:928:16: warning: comparison of integer expressions of different signedness: ‘int’ and ‘unsigned int’ [-Wsign-compare]
    928 |    for (i=0; i < numPixels(); i=i+3) {
        |                ^
  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 -Ilib/ -I/usr/include/python3.9 -c ws2812-RPi_wrap.c -o build/temp.linux-armv7l-3.9/ws2812-RPi_wrap.o
  In file included from ws2812-RPi_wrap.c:2967:
  lib/ws2812-RPi.h:95:1: warning: multi-line comment [-Wcomment]
     95 | // |   |   |  \  \___|  |_|  |  / /_/ \  ___/ \___ \
        | ^
  In file included from ws2812-RPi_wrap.c:2967:
  lib/ws2812-RPi.h:123:1: warning: multi-line comment [-Wcomment]
    123 | //  |    `   \  ___/|  |  |  |   |  \  ___/ \___ \  /  <_\ \/   \     /  / __ \|  | \/\___ \
        | ^
  lib/ws2812-RPi.h:389:1: warning: multi-line comment [-Wcomment]
    389 | // |    |    \_   _____/\______ \    /   _____//  |_ __ ___/ ____\/ ____\
        | ^
  lib/ws2812-RPi.h:436:1: warning: multi-line comment [-Wcomment]
    436 | //  |    |  \_/ __ \| __ \|  |  \/ ___\
        | ^
  lib/ws2812-RPi.h:456:1: warning: multi-line comment [-Wcomment]
    456 | // |   |/    \|  \   __\ /    ~    \__  \\_  __ \/ __ |\ \/ \/ /\__  \\_  __ \_/ __ \
        | ^
  lib/ws2812-RPi.h:470:1: warning: multi-line comment [-Wcomment]
    470 | //  |    |  / |  |_> > /_/ | / __ \|  | \  ___/  |    |___  |        \ |    `   \\___ \
        | ^
  lib/ws2812-RPi.h:481:1: warning: multi-line comment [-Wcomment]
    481 | //  |        \|  |   |  | \  ___/\  \___|  |  \___ \
        | ^
  ws2812-RPi_wrap.c: In function ‘PyInit__ws2812’:
  ws2812-RPi_wrap.c:4722:21: warning: variable ‘md’ set but not used [-Wunused-but-set-variable]
   4722 |   PyObject *m, *d, *md;
        |                     ^~
  In file included from ws2812-RPi_wrap.c:2967:
  At top level:
  lib/ws2812-RPi.h:359:31: warning: ‘ctl’ defined but not used [-Wunused-variable]
    359 | static struct control_data_s *ctl;
        |                               ^~~
  lib/ws2812-RPi.h:341:31: warning: ‘gpio_reg’ defined but not used [-Wunused-variable]
    341 | static volatile unsigned int *gpio_reg;  // GPIO pin controller register set
        |                               ^~~~~~~~
  lib/ws2812-RPi.h:340:31: warning: ‘dma_reg’ defined but not used [-Wunused-variable]
    340 | static volatile unsigned int *dma_reg;  // DMA controller register set
        |                               ^~~~~~~
  lib/ws2812-RPi.h:339:31: warning: ‘clk_reg’ defined but not used [-Wunused-variable]
    339 | static volatile unsigned int *clk_reg;  // PWM clock manager register set
        |                               ^~~~~~~
  lib/ws2812-RPi.h:338:31: warning: ‘pwm_reg’ defined but not used [-Wunused-variable]
    338 | static volatile unsigned int *pwm_reg;  // PWM controller register set
        |                               ^~~~~~~
  lib/ws2812-RPi.h:336:17: warning: ‘virtbase’ defined but not used [-Wunused-variable]
    336 | static uint8_t *virtbase;     // Pointer to some virtual memory that will be allocated
        |                 ^~~~~~~~
  In file included from /usr/include/string.h:495,
                   from /usr/include/python3.9/Python.h:30,
                   from ws2812-RPi_wrap.c:125:
  In function ‘strncpy’,
      inlined from ‘SWIG_Python_FixMethods’ at ws2812-RPi_wrap.c:4692:15,
      inlined from ‘PyInit__ws2812’ at ws2812-RPi_wrap.c:4790:3:
  /usr/include/arm-linux-gnueabihf/bits/string_fortified.h:106:10: warning: ‘__builtin_strncpy’ output truncated before terminating nul copying 10 bytes from a string of the same length [-Wstringop-truncation]
    106 |   return __builtin___strncpy_chk (__dest, __src, __len, __bos (__dest));
        |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  arm-linux-gnueabihf-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -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 build/temp.linux-armv7l-3.9/lib/ws2812-RPi.o build/temp.linux-armv7l-3.9/ws2812-RPi_wrap.o -Llib/ -o build/lib.linux-armv7l-3.9/_ws2812.cpython-39-arm-linux-gnueabihf.so
  /usr/bin/ld: build/temp.linux-armv7l-3.9/ws2812-RPi_wrap.o:/tmp/pip-install-s2avh39r/ws2812_a0e7526f29b5426d88cc79f76ebc9a10/lib/ws2812-RPi.h:415: multiple definition of `PWMWaveform'; build/temp.linux-armv7l-3.9/lib/ws2812-RPi.o:/tmp/pip-install-s2avh39r/ws2812_a0e7526f29b5426d88cc79f76ebc9a10/lib/ws2812-RPi.h:415: first defined here
  /usr/bin/ld: build/temp.linux-armv7l-3.9/ws2812-RPi_wrap.o:/tmp/pip-install-s2avh39r/ws2812_a0e7526f29b5426d88cc79f76ebc9a10/lib/ws2812-RPi.h:410: multiple definition of `LEDBuffer'; build/temp.linux-armv7l-3.9/lib/ws2812-RPi.o:/tmp/pip-install-s2avh39r/ws2812_a0e7526f29b5426d88cc79f76ebc9a10/lib/ws2812-RPi.h:410: first defined here
  /usr/bin/ld: build/temp.linux-armv7l-3.9/ws2812-RPi_wrap.o:/tmp/pip-install-s2avh39r/ws2812_a0e7526f29b5426d88cc79f76ebc9a10/lib/ws2812-RPi.h:407: multiple definition of `numLEDs'; build/temp.linux-armv7l-3.9/lib/ws2812-RPi.o:/tmp/pip-install-s2avh39r/ws2812_a0e7526f29b5426d88cc79f76ebc9a10/lib/ws2812-RPi.h:407: first defined here
  /usr/bin/ld: build/temp.linux-armv7l-3.9/ws2812-RPi_wrap.o:/tmp/pip-install-s2avh39r/ws2812_a0e7526f29b5426d88cc79f76ebc9a10/lib/ws2812-RPi.h:398: multiple definition of `brightness'; build/temp.linux-armv7l-3.9/lib/ws2812-RPi.o:/tmp/pip-install-s2avh39r/ws2812_a0e7526f29b5426d88cc79f76ebc9a10/lib/ws2812-RPi.h:398: first defined here
  /usr/bin/ld: build/temp.linux-armv7l-3.9/ws2812-RPi_wrap.o:/tmp/pip-install-s2avh39r/ws2812_a0e7526f29b5426d88cc79f76ebc9a10/lib/ws2812-RPi.h:335: multiple definition of `page_map'; build/temp.linux-armv7l-3.9/lib/ws2812-RPi.o:/tmp/pip-install-s2avh39r/ws2812_a0e7526f29b5426d88cc79f76ebc9a10/lib/ws2812-RPi.h:335: first defined here
  collect2: error: ld returned 1 exit status
  error: command '/usr/bin/arm-linux-gnueabihf-gcc' failed with exit code 1
  ----------------------------------------
  ERROR: Failed building wheel for ws2812
  Running setup.py clean for ws2812
Failed to build ws2812
Installing collected packages: ws2812, rpi-ws281x, pygame, luma.core, luma.oled, luma.led-matrix, luma.lcd, luma.emulator, argcomplete, luma.examples
    Running setup.py install for ws2812 ... error
    ERROR: Command errored out with exit status 1:
     command: /usr/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-s2avh39r/ws2812_a0e7526f29b5426d88cc79f76ebc9a10/setup.py'"'"'; __file__='"'"'/tmp/pip-install-s2avh39r/ws2812_a0e7526f29b5426d88cc79f76ebc9a10/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-b7ecqwm4/install-record.txt --single-version-externally-managed --compile --install-headers /usr/local/include/python3.9/ws2812
         cwd: /tmp/pip-install-s2avh39r/ws2812_a0e7526f29b5426d88cc79f76ebc9a10/
    Complete output (161 lines):
    running install
    running build
    running build_py
    creating build
    creating build/lib.linux-armv7l-3.9
    copying ws2812.py -> build/lib.linux-armv7l-3.9
    running build_ext
    building '_ws2812' extension
    creating build/temp.linux-armv7l-3.9
    creating build/temp.linux-armv7l-3.9/lib
    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 -Ilib/ -I/usr/include/python3.9 -c lib/ws2812-RPi.c -o build/temp.linux-armv7l-3.9/lib/ws2812-RPi.o
    In file included from lib/ws2812-RPi.c:1:
    lib/ws2812-RPi.h:95:1: warning: multi-line comment [-Wcomment]
       95 | // |   |   |  \  \___|  |_|  |  / /_/ \  ___/ \___ \
          | ^
    In file included from lib/ws2812-RPi.c:1:
    lib/ws2812-RPi.h:123:1: warning: multi-line comment [-Wcomment]
      123 | //  |    `   \  ___/|  |  |  |   |  \  ___/ \___ \  /  <_\ \/   \     /  / __ \|  | \/\___ \
          | ^
    lib/ws2812-RPi.h:389:1: warning: multi-line comment [-Wcomment]
      389 | // |    |    \_   _____/\______ \    /   _____//  |_ __ ___/ ____\/ ____\
          | ^
    lib/ws2812-RPi.h:436:1: warning: multi-line comment [-Wcomment]
      436 | //  |    |  \_/ __ \| __ \|  |  \/ ___\
          | ^
    lib/ws2812-RPi.h:456:1: warning: multi-line comment [-Wcomment]
      456 | // |   |/    \|  \   __\ /    ~    \__  \\_  __ \/ __ |\ \/ \/ /\__  \\_  __ \_/ __ \
          | ^
    lib/ws2812-RPi.h:470:1: warning: multi-line comment [-Wcomment]
      470 | //  |    |  / |  |_> > /_/ | / __ \|  | \  ___/  |    |___  |        \ |    `   \\___ \
          | ^
    lib/ws2812-RPi.h:481:1: warning: multi-line comment [-Wcomment]
      481 | //  |        \|  |   |  | \  ___/\  \___|  |  \___ \
          | ^
    lib/ws2812-RPi.c: In function ‘reverseWord’:
    lib/ws2812-RPi.c:49:16: warning: variable ‘bit’ set but not used [-Wunused-but-set-variable]
       49 |  unsigned char bit;
          |                ^~~
    lib/ws2812-RPi.c: In function ‘mem_phys_to_virt’:
    lib/ws2812-RPi.c:119:16: warning: comparison of integer expressions of different signedness: ‘int’ and ‘unsigned int’ [-Wsign-compare]
      119 |  for (i = 0; i < NUM_PAGES; i++) {
          |                ^
    lib/ws2812-RPi.c: At top level:
    lib/ws2812-RPi.c:147:1: warning: multi-line comment [-Wcomment]
      147 | // |    |    \_   _____/\______ \    /   _____//  |_ __ ___/ ____\/ ____\
          | ^
    lib/ws2812-RPi.c:292:1: warning: multi-line comment [-Wcomment]
      292 | //  |    |  \_/ __ \| __ \|  |  \/ ___\
          | ^
    lib/ws2812-RPi.c:471:1: warning: multi-line comment [-Wcomment]
      471 | // |   |/    \|  \   __\ /    ~    \__  \\_  __ \/ __ |\ \/ \/ /\__  \\_  __ \_/ __ \
          | ^
    lib/ws2812-RPi.c: In function ‘initHardware’:
    lib/ws2812-RPi.c:552:56: warning: comparison of integer expressions of different signedness: ‘__off_t’ {aka ‘long int’} and ‘long unsigned int’ [-Wsign-compare]
      552 |  if (lseek(fd, (unsigned long)virtbase >> 9, SEEK_SET) != (unsigned long)virtbase >> 9) {
          |                                                        ^~
    lib/ws2812-RPi.c:557:16: warning: comparison of integer expressions of different signedness: ‘int’ and ‘unsigned int’ [-Wsign-compare]
      557 |  for (i = 0; i < NUM_PAGES; i++) {
          |                ^
    lib/ws2812-RPi.c:569:18: warning: suggest parentheses around comparison in operand of ‘&’ [-Wparentheses]
      569 |   if ((pfn >> 55)&0xfbf != 0x10c) {  // pagemap bits: https://www.kernel.org/doc/Documentation/vm/pagemap.txt
          |                  ^
    lib/ws2812-RPi.c: At top level:
    lib/ws2812-RPi.c:745:1: warning: multi-line comment [-Wcomment]
      745 | //  |    |  / |  |_> > /_/ | / __ \|  | \  ___/  |    |___  |        \ |    `   \\___ \
          | ^
    lib/ws2812-RPi.c: In function ‘show’:
    lib/ws2812-RPi.c:764:12: warning: comparison of integer expressions of different signedness: ‘int’ and ‘unsigned int’ [-Wsign-compare]
      764 |  for(i=0; i<numLEDs; i++) {
          |            ^
    lib/ws2812-RPi.c:801:15: warning: comparison of integer expressions of different signedness: ‘int’ and ‘unsigned int’ [-Wsign-compare]
      801 |  for(i = 0; i < (cbp->length / 4); i++) {
          |               ^
    lib/ws2812-RPi.c:829:1: warning: "/*" within comment [-Wcomment]
      829 | /**/
          |
    lib/ws2812-RPi.c:762:10: warning: unused variable ‘color’ [-Wunused-variable]
      762 |  Color_t color;
          |          ^~~~~
    lib/ws2812-RPi.c:758:15: warning: unused variable ‘PWMWaveformBitPos’ [-Wunused-variable]
      758 |  unsigned int PWMWaveformBitPos = 0;
          |               ^~~~~~~~~~~~~~~~~
    lib/ws2812-RPi.c:757:15: warning: unused variable ‘LEDBuffeWordPos’ [-Wunused-variable]
      757 |  unsigned int LEDBuffeWordPos = 0;
          |               ^~~~~~~~~~~~~~~
    lib/ws2812-RPi.c: At top level:
    lib/ws2812-RPi.c:839:1: warning: multi-line comment [-Wcomment]
      839 | //  |        \|  |   |  | \  ___/\  \___|  |  \___ \
          | ^
    lib/ws2812-RPi.c: In function ‘theaterChaseRainbow’:
    lib/ws2812-RPi.c:921:16: warning: comparison of integer expressions of different signedness: ‘int’ and ‘unsigned int’ [-Wsign-compare]
      921 |    for (i=0; i < numPixels(); i=i+3) {
          |                ^
    lib/ws2812-RPi.c:928:16: warning: comparison of integer expressions of different signedness: ‘int’ and ‘unsigned int’ [-Wsign-compare]
      928 |    for (i=0; i < numPixels(); i=i+3) {
          |                ^
    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 -Ilib/ -I/usr/include/python3.9 -c ws2812-RPi_wrap.c -o build/temp.linux-armv7l-3.9/ws2812-RPi_wrap.o
    In file included from ws2812-RPi_wrap.c:2967:
    lib/ws2812-RPi.h:95:1: warning: multi-line comment [-Wcomment]
       95 | // |   |   |  \  \___|  |_|  |  / /_/ \  ___/ \___ \
          | ^
    In file included from ws2812-RPi_wrap.c:2967:
    lib/ws2812-RPi.h:123:1: warning: multi-line comment [-Wcomment]
      123 | //  |    `   \  ___/|  |  |  |   |  \  ___/ \___ \  /  <_\ \/   \     /  / __ \|  | \/\___ \
          | ^
    lib/ws2812-RPi.h:389:1: warning: multi-line comment [-Wcomment]
      389 | // |    |    \_   _____/\______ \    /   _____//  |_ __ ___/ ____\/ ____\
          | ^
    lib/ws2812-RPi.h:436:1: warning: multi-line comment [-Wcomment]
      436 | //  |    |  \_/ __ \| __ \|  |  \/ ___\
          | ^
    lib/ws2812-RPi.h:456:1: warning: multi-line comment [-Wcomment]
      456 | // |   |/    \|  \   __\ /    ~    \__  \\_  __ \/ __ |\ \/ \/ /\__  \\_  __ \_/ __ \
          | ^
    lib/ws2812-RPi.h:470:1: warning: multi-line comment [-Wcomment]
      470 | //  |    |  / |  |_> > /_/ | / __ \|  | \  ___/  |    |___  |        \ |    `   \\___ \
          | ^
    lib/ws2812-RPi.h:481:1: warning: multi-line comment [-Wcomment]
      481 | //  |        \|  |   |  | \  ___/\  \___|  |  \___ \
          | ^
    ws2812-RPi_wrap.c: In function ‘PyInit__ws2812’:
    ws2812-RPi_wrap.c:4722:21: warning: variable ‘md’ set but not used [-Wunused-but-set-variable]
     4722 |   PyObject *m, *d, *md;
          |                     ^~
    In file included from ws2812-RPi_wrap.c:2967:
    At top level:
    lib/ws2812-RPi.h:359:31: warning: ‘ctl’ defined but not used [-Wunused-variable]
      359 | static struct control_data_s *ctl;
          |                               ^~~
    lib/ws2812-RPi.h:341:31: warning: ‘gpio_reg’ defined but not used [-Wunused-variable]
      341 | static volatile unsigned int *gpio_reg;  // GPIO pin controller register set
          |                               ^~~~~~~~
    lib/ws2812-RPi.h:340:31: warning: ‘dma_reg’ defined but not used [-Wunused-variable]
      340 | static volatile unsigned int *dma_reg;  // DMA controller register set
          |                               ^~~~~~~
    lib/ws2812-RPi.h:339:31: warning: ‘clk_reg’ defined but not used [-Wunused-variable]
      339 | static volatile unsigned int *clk_reg;  // PWM clock manager register set
          |                               ^~~~~~~
    lib/ws2812-RPi.h:338:31: warning: ‘pwm_reg’ defined but not used [-Wunused-variable]
      338 | static volatile unsigned int *pwm_reg;  // PWM controller register set
          |                               ^~~~~~~
    lib/ws2812-RPi.h:336:17: warning: ‘virtbase’ defined but not used [-Wunused-variable]
      336 | static uint8_t *virtbase;     // Pointer to some virtual memory that will be allocated
          |                 ^~~~~~~~
    In file included from /usr/include/string.h:495,
                     from /usr/include/python3.9/Python.h:30,
                     from ws2812-RPi_wrap.c:125:
    In function ‘strncpy’,
        inlined from ‘SWIG_Python_FixMethods’ at ws2812-RPi_wrap.c:4692:15,
        inlined from ‘PyInit__ws2812’ at ws2812-RPi_wrap.c:4790:3:
    /usr/include/arm-linux-gnueabihf/bits/string_fortified.h:106:10: warning: ‘__builtin_strncpy’ output truncated before terminating nul copying 10 bytes from a string of the same length [-Wstringop-truncation]
      106 |   return __builtin___strncpy_chk (__dest, __src, __len, __bos (__dest));
          |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    arm-linux-gnueabihf-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -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 build/temp.linux-armv7l-3.9/lib/ws2812-RPi.o build/temp.linux-armv7l-3.9/ws2812-RPi_wrap.o -Llib/ -o build/lib.linux-armv7l-3.9/_ws2812.cpython-39-arm-linux-gnueabihf.so
    /usr/bin/ld: build/temp.linux-armv7l-3.9/ws2812-RPi_wrap.o:/tmp/pip-install-s2avh39r/ws2812_a0e7526f29b5426d88cc79f76ebc9a10/lib/ws2812-RPi.h:415: multiple definition of `PWMWaveform'; build/temp.linux-armv7l-3.9/lib/ws2812-RPi.o:/tmp/pip-install-s2avh39r/ws2812_a0e7526f29b5426d88cc79f76ebc9a10/lib/ws2812-RPi.h:415: first defined here
    /usr/bin/ld: build/temp.linux-armv7l-3.9/ws2812-RPi_wrap.o:/tmp/pip-install-s2avh39r/ws2812_a0e7526f29b5426d88cc79f76ebc9a10/lib/ws2812-RPi.h:410: multiple definition of `LEDBuffer'; build/temp.linux-armv7l-3.9/lib/ws2812-RPi.o:/tmp/pip-install-s2avh39r/ws2812_a0e7526f29b5426d88cc79f76ebc9a10/lib/ws2812-RPi.h:410: first defined here
    /usr/bin/ld: build/temp.linux-armv7l-3.9/ws2812-RPi_wrap.o:/tmp/pip-install-s2avh39r/ws2812_a0e7526f29b5426d88cc79f76ebc9a10/lib/ws2812-RPi.h:407: multiple definition of `numLEDs'; build/temp.linux-armv7l-3.9/lib/ws2812-RPi.o:/tmp/pip-install-s2avh39r/ws2812_a0e7526f29b5426d88cc79f76ebc9a10/lib/ws2812-RPi.h:407: first defined here
    /usr/bin/ld: build/temp.linux-armv7l-3.9/ws2812-RPi_wrap.o:/tmp/pip-install-s2avh39r/ws2812_a0e7526f29b5426d88cc79f76ebc9a10/lib/ws2812-RPi.h:398: multiple definition of `brightness'; build/temp.linux-armv7l-3.9/lib/ws2812-RPi.o:/tmp/pip-install-s2avh39r/ws2812_a0e7526f29b5426d88cc79f76ebc9a10/lib/ws2812-RPi.h:398: first defined here
    /usr/bin/ld: build/temp.linux-armv7l-3.9/ws2812-RPi_wrap.o:/tmp/pip-install-s2avh39r/ws2812_a0e7526f29b5426d88cc79f76ebc9a10/lib/ws2812-RPi.h:335: multiple definition of `page_map'; build/temp.linux-armv7l-3.9/lib/ws2812-RPi.o:/tmp/pip-install-s2avh39r/ws2812_a0e7526f29b5426d88cc79f76ebc9a10/lib/ws2812-RPi.h:335: first defined here
    collect2: error: ld returned 1 exit status
    error: command '/usr/bin/arm-linux-gnueabihf-gcc' failed with exit code 1
    ----------------------------------------
ERROR: Command errored out with exit status 1: /usr/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-s2avh39r/ws2812_a0e7526f29b5426d88cc79f76ebc9a10/setup.py'"'"'; __file__='"'"'/tmp/pip-install-s2avh39r/ws2812_a0e7526f29b5426d88cc79f76ebc9a10/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-b7ecqwm4/install-record.txt --single-version-externally-managed --compile --install-headers /usr/local/include/python3.9/ws2812 Check the logs for full command output.
thijstriemstra commented 2 years ago

This error was fixed in luma.led_matrix 1.6.0 and newer. Please upgrade by running sudo -H pip install -e . again when using luma.examples or sudo -H pip install -U luma.led_matrix.