How to Build an E-Paper To-Do List with Raspberry Pi
Set up a simple screen that tracks our tasks.
I’ve often struggled with procrastination, and to-do applications have been lifesaving. I sometimes find myself needing a reminder to just focus on getting the most important task done before working on anything else.
With that in mind, I created a simple photo frame to sit on my desk and remind me of my most important task of the day using e-paper and a Raspberry Pi. I wanted to use e-Paper specifically since it’s low-power and not as distracting as a standard display would be. If you’re the kind of person who likes a simple reminder of your most important tasks, here’s how to build it for yourself.
What You’ll Need For This Project
- Raspberry Pi 4, Raspberry Pi 3, or Raspberry Pi Zero with power adapter
- 8 GB (or larger) microSD card for Raspberry Pi
- 7.5” Black & White Waveshare E-Paper Display & Hat
- 5x7 Photo Frame
- A ToDoist account with Tasks in it
- Black construction paper
How to Build a To Do Reminder Frame with E-Paper and a Raspberry Pi
Before you get started, get your Raspberry Pi set up. If you haven’t done this before, see our article on how to set up a Raspberry Pi for the first time or how to do a headless Raspberry Pi install (without the keyboard and screen). For this project, we recommend a headless Raspberry Pi install.
1. Install git. We’ll need it to download the code from GitHub.
sudo apt-get update
sudo apt-get -y install git
2. Clone the repository to your home directory. This will ensure we have all the code and audio files we need to run the project.
cd ~/
git clone https://github.com/rydercalmdown/todo_reminder_frame.git
3. Run the “make install” command to install all project dependencies. This script will take care of installing lower level dependencies, as well as the Python libraries you need for the project to run.
cd ~/todo_reminder_frame/
make install
4. Locate the VCC and Ground pins on the e-paper hat, connect them to Raspberry Pi BOARD pins 4 and 6 respectively.
Stay On the Cutting Edge: Get the Tom's Hardware Newsletter
Get Tom's Hardware's best news and in-depth reviews, straight to your inbox.
5. Locate the DIN and CLK pins on the e-paper hat and connect them to Raspberry Pi BOARD pins 19 and 23 respectively.
6. Locate the CS and DC pins on the e-paper hat and connect them to Raspberry Pi BOARD pins 24 and 22 respectively.
7. Locate the RST and BUSY pins on the e-Paper hat, connect them to Raspberry Pi BOARD pins 11 and 18 respectively.
8. Using the included ribbon cable, connect your e-paper display hat to your e-paper display, if not already connected.
9. Enable the SPI interface by opening raspi-config and following through the menus.
sudo raspi-config
> 3 - Interface Options
> p4 - SPI
> Enable
> Finish
10. Restart your Raspberry Pi.
sudo reboot
11. Create a ToDoist account and add to-dos, if you haven’t already.
12. Visit your ToDoist integration settings and copy your API token at the bottom.
13. Export your API token to your environment.
nano ~/.bash_profile
# Add the following line near the end of the file
export TODOIST_PERSONAL_TOKEN=your_copied_token
# Ctrl X, then Y, then enter to save and exit.
14. Re-source your environment and run a test. You should see some logs appear indicating the display is retrieving tasks.
source ~/.bash_profile
cd ~/todo_reminder_frame
make run
</code>
<code>
INFO:root:Starting display
INFO:root:Starting 7.5 inch E-Paper Module
INFO:root:Running display
INFO:root:Checking for updates
INFO:root:Getting latest task
INFO:root:Latest task has changed
INFO:root:Updating display with latest task
INFO:root:Getting image buffer
INFO:root:Writing image to paper
15. Check that your display is updating. It should flash and update with your most urgent task. If nothing is happening, and the logs look normal, you may have a pin out of place. For further troubleshooting, visit the manufacturing guide.
16. Remove the back from your 5x7 photo frame and tuck in the e-paper display.
17. Tuck in the e-paper display with a piece of black construction paper over the top to cover up the edges.
18. Close the back of the frame, allowing the ribbon cable to carefully wrap around.
19. Tuck the hat and the Pi behind the frame, or hot glue them into place behind the frame.
20. Run the application. It will periodically check for the latest highest priority task with the soonest deadline in your ToDoList application.
make run
Ryder Damer is a Freelance Writer for Tom's Hardware US covering Raspberry Pi projects and tutorials.
-
stephencross Great project idea. I'm having trouble with the install process. It fails on:Reply
Building wheels for collected packages: RPi.GPIO
Building wheel for RPi.GPIO (setup.py) ... error
ERROR: Command errored out with exit status 1:
command: /home/pi/todo_reminder_frame/env/bin/python -u -c 'import io, os, sys, setuptools, tokenize; sys.argv = '"'"'/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/setup.py'"'"'; __file__='"'"'/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-7bui55pt
cwd: /tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/
Complete output (87 lines):
running bdist_wheel
running build
running build_py
creating build
creating build/lib.linux-armv7l-3.9
creating build/lib.linux-armv7l-3.9/RPi
copying RPi/__init__.py -> build/lib.linux-armv7l-3.9/RPi
creating build/lib.linux-armv7l-3.9/RPi/GPIO
copying RPi/GPIO/__init__.py -> build/lib.linux-armv7l-3.9/RPi/GPIO
running build_ext
building 'RPi._GPIO' extension
creating build/temp.linux-armv7l-3.9
creating build/temp.linux-armv7l-3.9/source
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/c_gpio.c -o build/temp.linux-armv7l-3.9/source/c_gpio.o
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/common.c -o build/temp.linux-armv7l-3.9/source/common.o
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/constants.c -o build/temp.linux-armv7l-3.9/source/constants.o
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/cpuinfo.c -o build/temp.linux-armv7l-3.9/source/cpuinfo.o
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/event_gpio.c -o build/temp.linux-armv7l-3.9/source/event_gpio.o
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/py_gpio.c -o build/temp.linux-armv7l-3.9/source/py_gpio.o
source/py_gpio.c: In function ‘PyInit__GPIO’:
source/py_gpio.c:1046:4: warning: ‘PyEval_ThreadsInitialized’ is deprecated 1046 | if (!PyEval_ThreadsInitialized())
| ^~
In file included from /usr/include/python3.9/Python.h:145,
from source/py_gpio.c:23:
/usr/include/python3.9/ceval.h:129:36: note: declared here
129 | Py_DEPRECATED(3.9) PyAPI_FUNC(int) PyEval_ThreadsInitialized(void);
| ^~~~~~~~~~~~~~~~~~~~~~~~~
source/py_gpio.c:1047:7: warning: ‘PyEval_InitThreads’ is deprecated 1047 | PyEval_InitThreads();
| ^~~~~~~~~~~~~~~~~~
In file included from /usr/include/python3.9/Python.h:145,
from source/py_gpio.c:23:
/usr/include/python3.9/ceval.h:130:37: note: declared here
130 | Py_DEPRECATED(3.9) PyAPI_FUNC(void) PyEval_InitThreads(void);
| ^~~~~~~~~~~~~~~~~~
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/py_pwm.c -o build/temp.linux-armv7l-3.9/source/py_pwm.o
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/soft_pwm.c -o build/temp.linux-armv7l-3.9/source/soft_pwm.o
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/source/c_gpio.o build/temp.linux-armv7l-3.9/source/common.o build/temp.linux-armv7l-3.9/source/constants.o build/temp.linux-armv7l-3.9/source/cpuinfo.o build/temp.linux-armv7l-3.9/source/event_gpio.o build/temp.linux-armv7l-3.9/source/py_gpio.o build/temp.linux-armv7l-3.9/source/py_pwm.o build/temp.linux-armv7l-3.9/source/soft_pwm.o -o build/lib.linux-armv7l-3.9/RPi/_GPIO.cpython-39-arm-linux-gnueabihf.so
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:41: multiple definition of `module_setup'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:41: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:40: multiple definition of `setup_error'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:40: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:39: multiple definition of `rpiinfo'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:39: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:38: multiple definition of `gpio_direction'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:38: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:37: multiple definition of `pin_to_gpio'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:37: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:36: multiple definition of `pin_to_gpio_rev3'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:36: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:35: multiple definition of `pin_to_gpio_rev2'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:35: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:34: multiple definition of `pin_to_gpio_rev1'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:34: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:33: multiple definition of `gpio_mode'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:33: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:33: multiple definition of `gpio_mode'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:33: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:40: multiple definition of `setup_error'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:40: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:39: multiple definition of `rpiinfo'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:39: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:38: multiple definition of `gpio_direction'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:38: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:41: multiple definition of `module_setup'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:41: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:37: multiple definition of `pin_to_gpio'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:37: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:36: multiple definition of `pin_to_gpio_rev3'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:36: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:34: multiple definition of `pin_to_gpio_rev1'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:34: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:35: multiple definition of `pin_to_gpio_rev2'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:35: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:42: multiple definition of `both_edge'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:42: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:41: multiple definition of `falling_edge'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:41: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:40: multiple definition of `rising_edge'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:40: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:39: multiple definition of `pud_down'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:39: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:38: multiple definition of `pud_up'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:38: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:37: multiple definition of `pud_off'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:37: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:36: multiple definition of `bcm'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:36: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:35: multiple definition of `board'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:35: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:34: multiple definition of `unknown'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:34: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:33: multiple definition of `spi'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:33: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:32: multiple definition of `i2c'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:32: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:31: multiple definition of `serial'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:31: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:30: multiple definition of `pwm'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:30: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:29: multiple definition of `output'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:29: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:28: multiple definition of `input'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:28: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:27: multiple definition of `low'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:27: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:26: multiple definition of `high'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:26: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:38: multiple definition of `gpio_direction'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:38: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/py_pwm.h:23: multiple definition of `PWMType'; build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/py_pwm.h:23: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:41: multiple definition of `module_setup'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:41: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:40: multiple definition of `setup_error'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:40: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:39: multiple definition of `rpiinfo'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:39: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:37: multiple definition of `pin_to_gpio'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:37: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:36: multiple definition of `pin_to_gpio_rev3'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:36: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:35: multiple definition of `pin_to_gpio_rev2'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:35: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:34: multiple definition of `pin_to_gpio_rev1'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:34: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:33: multiple definition of `gpio_mode'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:33: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/soft_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/soft_pwm.c:28: multiple definition of `threads'; build/temp.linux-armv7l-3.9/source/event_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/event_gpio.c:60: 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 RPi.GPIO
Running setup.py clean for RPi.GPIO
Failed to build RPi.GPIO
Installing collected packages: RPi.GPIO, requests, pillow, numpy, flask
Running setup.py install for RPi.GPIO ... error
ERROR: Command errored out with exit status 1:
command: /home/pi/todo_reminder_frame/env/bin/python -u -c 'import io, os, sys, setuptools, tokenize; sys.argv = '"'"'/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/setup.py'"'"'; __file__='"'"'/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-t3eozh0v/install-record.txt --single-version-externally-managed --compile --install-headers /home/pi/todo_reminder_frame/env/include/site/python3.9/RPi.GPIO
cwd: /tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/
Complete output (89 lines):
running install
/home/pi/todo_reminder_frame/env/lib/python3.9/site-packages/setuptools/command/install.py:34: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools.
warnings.warn(
running build
running build_py
creating build
creating build/lib.linux-armv7l-3.9
creating build/lib.linux-armv7l-3.9/RPi
copying RPi/__init__.py -> build/lib.linux-armv7l-3.9/RPi
creating build/lib.linux-armv7l-3.9/RPi/GPIO
copying RPi/GPIO/__init__.py -> build/lib.linux-armv7l-3.9/RPi/GPIO
running build_ext
building 'RPi._GPIO' extension
creating build/temp.linux-armv7l-3.9
creating build/temp.linux-armv7l-3.9/source
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/c_gpio.c -o build/temp.linux-armv7l-3.9/source/c_gpio.o
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/common.c -o build/temp.linux-armv7l-3.9/source/common.o
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/constants.c -o build/temp.linux-armv7l-3.9/source/constants.o
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/cpuinfo.c -o build/temp.linux-armv7l-3.9/source/cpuinfo.o
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/event_gpio.c -o build/temp.linux-armv7l-3.9/source/event_gpio.o
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/py_gpio.c -o build/temp.linux-armv7l-3.9/source/py_gpio.o
source/py_gpio.c: In function ‘PyInit__GPIO’:
source/py_gpio.c:1046:4: warning: ‘PyEval_ThreadsInitialized’ is deprecated 1046 | if (!PyEval_ThreadsInitialized())
| ^~
In file included from /usr/include/python3.9/Python.h:145,
from source/py_gpio.c:23:
/usr/include/python3.9/ceval.h:129:36: note: declared here
129 | Py_DEPRECATED(3.9) PyAPI_FUNC(int) PyEval_ThreadsInitialized(void);
| ^~~~~~~~~~~~~~~~~~~~~~~~~
source/py_gpio.c:1047:7: warning: ‘PyEval_InitThreads’ is deprecated 1047 | PyEval_InitThreads();
| ^~~~~~~~~~~~~~~~~~
In file included from /usr/include/python3.9/Python.h:145,
from source/py_gpio.c:23:
/usr/include/python3.9/ceval.h:130:37: note: declared here
130 | Py_DEPRECATED(3.9) PyAPI_FUNC(void) PyEval_InitThreads(void);
| ^~~~~~~~~~~~~~~~~~
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/py_pwm.c -o build/temp.linux-armv7l-3.9/source/py_pwm.o
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/soft_pwm.c -o build/temp.linux-armv7l-3.9/source/soft_pwm.o
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/source/c_gpio.o build/temp.linux-armv7l-3.9/source/common.o build/temp.linux-armv7l-3.9/source/constants.o build/temp.linux-armv7l-3.9/source/cpuinfo.o build/temp.linux-armv7l-3.9/source/event_gpio.o build/temp.linux-armv7l-3.9/source/py_gpio.o build/temp.linux-armv7l-3.9/source/py_pwm.o build/temp.linux-armv7l-3.9/source/soft_pwm.o -o build/lib.linux-armv7l-3.9/RPi/_GPIO.cpython-39-arm-linux-gnueabihf.so
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:41: multiple definition of `module_setup'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:41: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:40: multiple definition of `setup_error'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:40: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:39: multiple definition of `rpiinfo'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:39: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:38: multiple definition of `gpio_direction'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:38: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:37: multiple definition of `pin_to_gpio'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:37: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:36: multiple definition of `pin_to_gpio_rev3'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:36: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:35: multiple definition of `pin_to_gpio_rev2'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:35: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:34: multiple definition of `pin_to_gpio_rev1'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:34: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:33: multiple definition of `gpio_mode'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:33: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:33: multiple definition of `gpio_mode'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:33: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:40: multiple definition of `setup_error'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:40: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:39: multiple definition of `rpiinfo'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:39: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:38: multiple definition of `gpio_direction'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:38: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:41: multiple definition of `module_setup'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:41: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:37: multiple definition of `pin_to_gpio'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:37: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:36: multiple definition of `pin_to_gpio_rev3'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:36: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:34: multiple definition of `pin_to_gpio_rev1'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:34: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:35: multiple definition of `pin_to_gpio_rev2'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:35: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:42: multiple definition of `both_edge'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:42: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:41: multiple definition of `falling_edge'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:41: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:40: multiple definition of `rising_edge'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:40: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:39: multiple definition of `pud_down'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:39: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:38: multiple definition of `pud_up'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:38: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:37: multiple definition of `pud_off'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:37: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:36: multiple definition of `bcm'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:36: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:35: multiple definition of `board'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:35: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:34: multiple definition of `unknown'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:34: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:33: multiple definition of `spi'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:33: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:32: multiple definition of `i2c'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:32: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:31: multiple definition of `serial'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:31: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:30: multiple definition of `pwm'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:30: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:29: multiple definition of `output'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:29: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:28: multiple definition of `input'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:28: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:27: multiple definition of `low'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:27: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:26: multiple definition of `high'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:26: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:38: multiple definition of `gpio_direction'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:38: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/py_pwm.h:23: multiple definition of `PWMType'; build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/py_pwm.h:23: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:41: multiple definition of `module_setup'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:41: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:40: multiple definition of `setup_error'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:40: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:39: multiple definition of `rpiinfo'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:39: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:37: multiple definition of `pin_to_gpio'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:37: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:36: multiple definition of `pin_to_gpio_rev3'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:36: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:35: multiple definition of `pin_to_gpio_rev2'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:35: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:34: multiple definition of `pin_to_gpio_rev1'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:34: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:33: multiple definition of `gpio_mode'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:33: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/soft_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/soft_pwm.c:28: multiple definition of `threads'; build/temp.linux-armv7l-3.9/source/event_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/event_gpio.c:60: 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: /home/pi/todo_reminder_frame/env/bin/python -u -c 'import io, os, sys, setuptools, tokenize; sys.argv = '"'"'/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/setup.py'"'"'; __file__='"'"'/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-t3eozh0v/install-record.txt --single-version-externally-managed --compile --install-headers /home/pi/todo_reminder_frame/env/include/site/python3.9/RPi.GPIO Check the logs for full command output.
Any assistance resolving this would be helpful.
Running:
Pi 3 B
Raspberry Pi OS 11 (Bullseye) -
Malikaie I'm stuck on step 14... Any ideas?Reply
i@raspberrypi:~/todo_reminder_frame $ make run
Traceback (most recent call last):
File "/home/pi/todo_reminder_frame/src/app.py", line 4, in <module>
from paper_controller import PaperController
File "/home/pi/todo_reminder_frame/src/paper_controller.py", line 4, in <module>
from epaper_libs import epd7in5_V2
File "/home/pi/todo_reminder_frame/src/epaper_libs/epd7in5_V2.py", line 33, in <module>
from . import epdconfig
File "/home/pi/todo_reminder_frame/src/epaper_libs/epdconfig.py", line 152, in <module>
implementation = RaspberryPi()
File "/home/pi/todo_reminder_frame/src/epaper_libs/epdconfig.py", line 46, in init import spidev
ImportError: /home/pi/todo_reminder_frame/env/lib/python3.9/site-packages/spidev.cpython-39-arm-linux-gnueabihf.so: invalid ELF header
make: *** Error 1
Everything's assembled and ready, but we're stuck on the last step. -
stephencross stephencross said:Great project idea. I'm having trouble with the install process. It fails on:
Building wheels for collected packages: RPi.GPIO
Building wheel for RPi.GPIO (setup.py) ... error
ERROR: Command errored out with exit status 1:
command: /home/pi/todo_reminder_frame/env/bin/python -u -c 'import io, os, sys, setuptools, tokenize; sys.argv = '"'"'/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/setup.py'"'"'; __file__='"'"'/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-7bui55pt
cwd: /tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/
Complete output (87 lines):
running bdist_wheel
running build
running build_py
creating build
creating build/lib.linux-armv7l-3.9
creating build/lib.linux-armv7l-3.9/RPi
copying RPi/__init__.py -> build/lib.linux-armv7l-3.9/RPi
creating build/lib.linux-armv7l-3.9/RPi/GPIO
copying RPi/GPIO/__init__.py -> build/lib.linux-armv7l-3.9/RPi/GPIO
running build_ext
building 'RPi._GPIO' extension
creating build/temp.linux-armv7l-3.9
creating build/temp.linux-armv7l-3.9/source
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/c_gpio.c -o build/temp.linux-armv7l-3.9/source/c_gpio.o
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/common.c -o build/temp.linux-armv7l-3.9/source/common.o
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/constants.c -o build/temp.linux-armv7l-3.9/source/constants.o
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/cpuinfo.c -o build/temp.linux-armv7l-3.9/source/cpuinfo.o
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/event_gpio.c -o build/temp.linux-armv7l-3.9/source/event_gpio.o
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/py_gpio.c -o build/temp.linux-armv7l-3.9/source/py_gpio.o
source/py_gpio.c: In function ‘PyInit__GPIO’:
source/py_gpio.c:1046:4: warning: ‘PyEval_ThreadsInitialized’ is deprecated 1046 | if (!PyEval_ThreadsInitialized())
| ^~
In file included from /usr/include/python3.9/Python.h:145,
from source/py_gpio.c:23:
/usr/include/python3.9/ceval.h:129:36: note: declared here
129 | Py_DEPRECATED(3.9) PyAPI_FUNC(int) PyEval_ThreadsInitialized(void);
| ^~~~~~~~~~~~~~~~~~~~~~~~~
source/py_gpio.c:1047:7: warning: ‘PyEval_InitThreads’ is deprecated 1047 | PyEval_InitThreads();
| ^~~~~~~~~~~~~~~~~~
In file included from /usr/include/python3.9/Python.h:145,
from source/py_gpio.c:23:
/usr/include/python3.9/ceval.h:130:37: note: declared here
130 | Py_DEPRECATED(3.9) PyAPI_FUNC(void) PyEval_InitThreads(void);
| ^~~~~~~~~~~~~~~~~~
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/py_pwm.c -o build/temp.linux-armv7l-3.9/source/py_pwm.o
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/soft_pwm.c -o build/temp.linux-armv7l-3.9/source/soft_pwm.o
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/source/c_gpio.o build/temp.linux-armv7l-3.9/source/common.o build/temp.linux-armv7l-3.9/source/constants.o build/temp.linux-armv7l-3.9/source/cpuinfo.o build/temp.linux-armv7l-3.9/source/event_gpio.o build/temp.linux-armv7l-3.9/source/py_gpio.o build/temp.linux-armv7l-3.9/source/py_pwm.o build/temp.linux-armv7l-3.9/source/soft_pwm.o -o build/lib.linux-armv7l-3.9/RPi/_GPIO.cpython-39-arm-linux-gnueabihf.so
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:41: multiple definition of `module_setup'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:41: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:40: multiple definition of `setup_error'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:40: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:39: multiple definition of `rpiinfo'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:39: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:38: multiple definition of `gpio_direction'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:38: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:37: multiple definition of `pin_to_gpio'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:37: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:36: multiple definition of `pin_to_gpio_rev3'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:36: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:35: multiple definition of `pin_to_gpio_rev2'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:35: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:34: multiple definition of `pin_to_gpio_rev1'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:34: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:33: multiple definition of `gpio_mode'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:33: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:33: multiple definition of `gpio_mode'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:33: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:40: multiple definition of `setup_error'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:40: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:39: multiple definition of `rpiinfo'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:39: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:38: multiple definition of `gpio_direction'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:38: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:41: multiple definition of `module_setup'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:41: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:37: multiple definition of `pin_to_gpio'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:37: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:36: multiple definition of `pin_to_gpio_rev3'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:36: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:34: multiple definition of `pin_to_gpio_rev1'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:34: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:35: multiple definition of `pin_to_gpio_rev2'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:35: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:42: multiple definition of `both_edge'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:42: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:41: multiple definition of `falling_edge'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:41: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:40: multiple definition of `rising_edge'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:40: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:39: multiple definition of `pud_down'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:39: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:38: multiple definition of `pud_up'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:38: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:37: multiple definition of `pud_off'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:37: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:36: multiple definition of `bcm'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:36: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:35: multiple definition of `board'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:35: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:34: multiple definition of `unknown'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:34: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:33: multiple definition of `spi'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:33: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:32: multiple definition of `i2c'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:32: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:31: multiple definition of `serial'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:31: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:30: multiple definition of `pwm'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:30: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:29: multiple definition of `output'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:29: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:28: multiple definition of `input'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:28: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:27: multiple definition of `low'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:27: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:26: multiple definition of `high'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:26: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:38: multiple definition of `gpio_direction'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:38: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/py_pwm.h:23: multiple definition of `PWMType'; build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/py_pwm.h:23: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:41: multiple definition of `module_setup'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:41: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:40: multiple definition of `setup_error'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:40: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:39: multiple definition of `rpiinfo'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:39: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:37: multiple definition of `pin_to_gpio'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:37: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:36: multiple definition of `pin_to_gpio_rev3'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:36: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:35: multiple definition of `pin_to_gpio_rev2'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:35: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:34: multiple definition of `pin_to_gpio_rev1'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:34: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:33: multiple definition of `gpio_mode'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:33: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/soft_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/soft_pwm.c:28: multiple definition of `threads'; build/temp.linux-armv7l-3.9/source/event_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/event_gpio.c:60: 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 RPi.GPIO
Running setup.py clean for RPi.GPIO
Failed to build RPi.GPIO
Installing collected packages: RPi.GPIO, requests, pillow, numpy, flask
Running setup.py install for RPi.GPIO ... error
ERROR: Command errored out with exit status 1:
command: /home/pi/todo_reminder_frame/env/bin/python -u -c 'import io, os, sys, setuptools, tokenize; sys.argv = '"'"'/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/setup.py'"'"'; __file__='"'"'/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-t3eozh0v/install-record.txt --single-version-externally-managed --compile --install-headers /home/pi/todo_reminder_frame/env/include/site/python3.9/RPi.GPIO
cwd: /tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/
Complete output (89 lines):
running install
/home/pi/todo_reminder_frame/env/lib/python3.9/site-packages/setuptools/command/install.py:34: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools.
warnings.warn(
running build
running build_py
creating build
creating build/lib.linux-armv7l-3.9
creating build/lib.linux-armv7l-3.9/RPi
copying RPi/__init__.py -> build/lib.linux-armv7l-3.9/RPi
creating build/lib.linux-armv7l-3.9/RPi/GPIO
copying RPi/GPIO/__init__.py -> build/lib.linux-armv7l-3.9/RPi/GPIO
running build_ext
building 'RPi._GPIO' extension
creating build/temp.linux-armv7l-3.9
creating build/temp.linux-armv7l-3.9/source
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/c_gpio.c -o build/temp.linux-armv7l-3.9/source/c_gpio.o
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/common.c -o build/temp.linux-armv7l-3.9/source/common.o
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/constants.c -o build/temp.linux-armv7l-3.9/source/constants.o
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/cpuinfo.c -o build/temp.linux-armv7l-3.9/source/cpuinfo.o
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/event_gpio.c -o build/temp.linux-armv7l-3.9/source/event_gpio.o
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/py_gpio.c -o build/temp.linux-armv7l-3.9/source/py_gpio.o
source/py_gpio.c: In function ‘PyInit__GPIO’:
source/py_gpio.c:1046:4: warning: ‘PyEval_ThreadsInitialized’ is deprecated 1046 | if (!PyEval_ThreadsInitialized())
| ^~
In file included from /usr/include/python3.9/Python.h:145,
from source/py_gpio.c:23:
/usr/include/python3.9/ceval.h:129:36: note: declared here
129 | Py_DEPRECATED(3.9) PyAPI_FUNC(int) PyEval_ThreadsInitialized(void);
| ^~~~~~~~~~~~~~~~~~~~~~~~~
source/py_gpio.c:1047:7: warning: ‘PyEval_InitThreads’ is deprecated 1047 | PyEval_InitThreads();
| ^~~~~~~~~~~~~~~~~~
In file included from /usr/include/python3.9/Python.h:145,
from source/py_gpio.c:23:
/usr/include/python3.9/ceval.h:130:37: note: declared here
130 | Py_DEPRECATED(3.9) PyAPI_FUNC(void) PyEval_InitThreads(void);
| ^~~~~~~~~~~~~~~~~~
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/py_pwm.c -o build/temp.linux-armv7l-3.9/source/py_pwm.o
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/soft_pwm.c -o build/temp.linux-armv7l-3.9/source/soft_pwm.o
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/source/c_gpio.o build/temp.linux-armv7l-3.9/source/common.o build/temp.linux-armv7l-3.9/source/constants.o build/temp.linux-armv7l-3.9/source/cpuinfo.o build/temp.linux-armv7l-3.9/source/event_gpio.o build/temp.linux-armv7l-3.9/source/py_gpio.o build/temp.linux-armv7l-3.9/source/py_pwm.o build/temp.linux-armv7l-3.9/source/soft_pwm.o -o build/lib.linux-armv7l-3.9/RPi/_GPIO.cpython-39-arm-linux-gnueabihf.so
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:41: multiple definition of `module_setup'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:41: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:40: multiple definition of `setup_error'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:40: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:39: multiple definition of `rpiinfo'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:39: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:38: multiple definition of `gpio_direction'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:38: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:37: multiple definition of `pin_to_gpio'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:37: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:36: multiple definition of `pin_to_gpio_rev3'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:36: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:35: multiple definition of `pin_to_gpio_rev2'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:35: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:34: multiple definition of `pin_to_gpio_rev1'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:34: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:33: multiple definition of `gpio_mode'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:33: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:33: multiple definition of `gpio_mode'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:33: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:40: multiple definition of `setup_error'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:40: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:39: multiple definition of `rpiinfo'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:39: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:38: multiple definition of `gpio_direction'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:38: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:41: multiple definition of `module_setup'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:41: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:37: multiple definition of `pin_to_gpio'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:37: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:36: multiple definition of `pin_to_gpio_rev3'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:36: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:34: multiple definition of `pin_to_gpio_rev1'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:34: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:35: multiple definition of `pin_to_gpio_rev2'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:35: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:42: multiple definition of `both_edge'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:42: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:41: multiple definition of `falling_edge'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:41: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:40: multiple definition of `rising_edge'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:40: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:39: multiple definition of `pud_down'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:39: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:38: multiple definition of `pud_up'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:38: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:37: multiple definition of `pud_off'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:37: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:36: multiple definition of `bcm'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:36: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:35: multiple definition of `board'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:35: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:34: multiple definition of `unknown'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:34: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:33: multiple definition of `spi'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:33: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:32: multiple definition of `i2c'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:32: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:31: multiple definition of `serial'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:31: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:30: multiple definition of `pwm'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:30: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:29: multiple definition of `output'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:29: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:28: multiple definition of `input'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:28: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:27: multiple definition of `low'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:27: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:26: multiple definition of `high'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:26: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:38: multiple definition of `gpio_direction'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:38: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/py_pwm.h:23: multiple definition of `PWMType'; build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/py_pwm.h:23: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:41: multiple definition of `module_setup'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:41: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:40: multiple definition of `setup_error'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:40: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:39: multiple definition of `rpiinfo'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:39: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:37: multiple definition of `pin_to_gpio'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:37: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:36: multiple definition of `pin_to_gpio_rev3'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:36: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:35: multiple definition of `pin_to_gpio_rev2'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:35: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:34: multiple definition of `pin_to_gpio_rev1'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:34: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:33: multiple definition of `gpio_mode'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:33: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/soft_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/soft_pwm.c:28: multiple definition of `threads'; build/temp.linux-armv7l-3.9/source/event_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/event_gpio.c:60: 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: /home/pi/todo_reminder_frame/env/bin/python -u -c 'import io, os, sys, setuptools, tokenize; sys.argv = '"'"'/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/setup.py'"'"'; __file__='"'"'/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-t3eozh0v/install-record.txt --single-version-externally-managed --compile --install-headers /home/pi/todo_reminder_frame/env/include/site/python3.9/RPi.GPIO Check the logs for full command output.
Any assistance resolving this would be helpful.
Running:
Pi 3 B
Raspberry Pi OS 11 (Bullseye)stephencross said:Great project idea. I'm having trouble with the install process. It fails on:
Building wheels for collected packages: RPi.GPIO
Building wheel for RPi.GPIO (setup.py) ... error
ERROR: Command errored out with exit status 1:
command: /home/pi/todo_reminder_frame/env/bin/python -u -c 'import io, os, sys, setuptools, tokenize; sys.argv = '"'"'/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/setup.py'"'"'; __file__='"'"'/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-7bui55pt
cwd: /tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/
Complete output (87 lines):
running bdist_wheel
running build
running build_py
creating build
creating build/lib.linux-armv7l-3.9
creating build/lib.linux-armv7l-3.9/RPi
copying RPi/__init__.py -> build/lib.linux-armv7l-3.9/RPi
creating build/lib.linux-armv7l-3.9/RPi/GPIO
copying RPi/GPIO/__init__.py -> build/lib.linux-armv7l-3.9/RPi/GPIO
running build_ext
building 'RPi._GPIO' extension
creating build/temp.linux-armv7l-3.9
creating build/temp.linux-armv7l-3.9/source
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/c_gpio.c -o build/temp.linux-armv7l-3.9/source/c_gpio.o
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/common.c -o build/temp.linux-armv7l-3.9/source/common.o
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/constants.c -o build/temp.linux-armv7l-3.9/source/constants.o
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/cpuinfo.c -o build/temp.linux-armv7l-3.9/source/cpuinfo.o
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/event_gpio.c -o build/temp.linux-armv7l-3.9/source/event_gpio.o
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/py_gpio.c -o build/temp.linux-armv7l-3.9/source/py_gpio.o
source/py_gpio.c: In function ‘PyInit__GPIO’:
source/py_gpio.c:1046:4: warning: ‘PyEval_ThreadsInitialized’ is deprecated 1046 | if (!PyEval_ThreadsInitialized())
| ^~
In file included from /usr/include/python3.9/Python.h:145,
from source/py_gpio.c:23:
/usr/include/python3.9/ceval.h:129:36: note: declared here
129 | Py_DEPRECATED(3.9) PyAPI_FUNC(int) PyEval_ThreadsInitialized(void);
| ^~~~~~~~~~~~~~~~~~~~~~~~~
source/py_gpio.c:1047:7: warning: ‘PyEval_InitThreads’ is deprecated 1047 | PyEval_InitThreads();
| ^~~~~~~~~~~~~~~~~~
In file included from /usr/include/python3.9/Python.h:145,
from source/py_gpio.c:23:
/usr/include/python3.9/ceval.h:130:37: note: declared here
130 | Py_DEPRECATED(3.9) PyAPI_FUNC(void) PyEval_InitThreads(void);
| ^~~~~~~~~~~~~~~~~~
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/py_pwm.c -o build/temp.linux-armv7l-3.9/source/py_pwm.o
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/soft_pwm.c -o build/temp.linux-armv7l-3.9/source/soft_pwm.o
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/source/c_gpio.o build/temp.linux-armv7l-3.9/source/common.o build/temp.linux-armv7l-3.9/source/constants.o build/temp.linux-armv7l-3.9/source/cpuinfo.o build/temp.linux-armv7l-3.9/source/event_gpio.o build/temp.linux-armv7l-3.9/source/py_gpio.o build/temp.linux-armv7l-3.9/source/py_pwm.o build/temp.linux-armv7l-3.9/source/soft_pwm.o -o build/lib.linux-armv7l-3.9/RPi/_GPIO.cpython-39-arm-linux-gnueabihf.so
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:41: multiple definition of `module_setup'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:41: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:40: multiple definition of `setup_error'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:40: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:39: multiple definition of `rpiinfo'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:39: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:38: multiple definition of `gpio_direction'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:38: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:37: multiple definition of `pin_to_gpio'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:37: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:36: multiple definition of `pin_to_gpio_rev3'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:36: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:35: multiple definition of `pin_to_gpio_rev2'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:35: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:34: multiple definition of `pin_to_gpio_rev1'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:34: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:33: multiple definition of `gpio_mode'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:33: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:33: multiple definition of `gpio_mode'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:33: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:40: multiple definition of `setup_error'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:40: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:39: multiple definition of `rpiinfo'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:39: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:38: multiple definition of `gpio_direction'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:38: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:41: multiple definition of `module_setup'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:41: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:37: multiple definition of `pin_to_gpio'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:37: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:36: multiple definition of `pin_to_gpio_rev3'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:36: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:34: multiple definition of `pin_to_gpio_rev1'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:34: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:35: multiple definition of `pin_to_gpio_rev2'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:35: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:42: multiple definition of `both_edge'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:42: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:41: multiple definition of `falling_edge'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:41: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:40: multiple definition of `rising_edge'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:40: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:39: multiple definition of `pud_down'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:39: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:38: multiple definition of `pud_up'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:38: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:37: multiple definition of `pud_off'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:37: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:36: multiple definition of `bcm'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:36: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:35: multiple definition of `board'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:35: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:34: multiple definition of `unknown'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:34: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:33: multiple definition of `spi'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:33: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:32: multiple definition of `i2c'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:32: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:31: multiple definition of `serial'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:31: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:30: multiple definition of `pwm'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:30: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:29: multiple definition of `output'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:29: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:28: multiple definition of `input'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:28: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:27: multiple definition of `low'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:27: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:26: multiple definition of `high'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:26: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:38: multiple definition of `gpio_direction'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:38: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/py_pwm.h:23: multiple definition of `PWMType'; build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/py_pwm.h:23: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:41: multiple definition of `module_setup'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:41: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:40: multiple definition of `setup_error'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:40: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:39: multiple definition of `rpiinfo'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:39: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:37: multiple definition of `pin_to_gpio'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:37: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:36: multiple definition of `pin_to_gpio_rev3'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:36: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:35: multiple definition of `pin_to_gpio_rev2'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:35: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:34: multiple definition of `pin_to_gpio_rev1'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:34: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:33: multiple definition of `gpio_mode'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:33: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/soft_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/soft_pwm.c:28: multiple definition of `threads'; build/temp.linux-armv7l-3.9/source/event_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/event_gpio.c:60: 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 RPi.GPIO
Running setup.py clean for RPi.GPIO
Failed to build RPi.GPIO
Installing collected packages: RPi.GPIO, requests, pillow, numpy, flask
Running setup.py install for RPi.GPIO ... error
ERROR: Command errored out with exit status 1:
command: /home/pi/todo_reminder_frame/env/bin/python -u -c 'import io, os, sys, setuptools, tokenize; sys.argv = '"'"'/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/setup.py'"'"'; __file__='"'"'/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-t3eozh0v/install-record.txt --single-version-externally-managed --compile --install-headers /home/pi/todo_reminder_frame/env/include/site/python3.9/RPi.GPIO
cwd: /tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/
Complete output (89 lines):
running install
/home/pi/todo_reminder_frame/env/lib/python3.9/site-packages/setuptools/command/install.py:34: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools.
warnings.warn(
running build
running build_py
creating build
creating build/lib.linux-armv7l-3.9
creating build/lib.linux-armv7l-3.9/RPi
copying RPi/__init__.py -> build/lib.linux-armv7l-3.9/RPi
creating build/lib.linux-armv7l-3.9/RPi/GPIO
copying RPi/GPIO/__init__.py -> build/lib.linux-armv7l-3.9/RPi/GPIO
running build_ext
building 'RPi._GPIO' extension
creating build/temp.linux-armv7l-3.9
creating build/temp.linux-armv7l-3.9/source
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/c_gpio.c -o build/temp.linux-armv7l-3.9/source/c_gpio.o
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/common.c -o build/temp.linux-armv7l-3.9/source/common.o
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/constants.c -o build/temp.linux-armv7l-3.9/source/constants.o
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/cpuinfo.c -o build/temp.linux-armv7l-3.9/source/cpuinfo.o
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/event_gpio.c -o build/temp.linux-armv7l-3.9/source/event_gpio.o
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/py_gpio.c -o build/temp.linux-armv7l-3.9/source/py_gpio.o
source/py_gpio.c: In function ‘PyInit__GPIO’:
source/py_gpio.c:1046:4: warning: ‘PyEval_ThreadsInitialized’ is deprecated 1046 | if (!PyEval_ThreadsInitialized())
| ^~
In file included from /usr/include/python3.9/Python.h:145,
from source/py_gpio.c:23:
/usr/include/python3.9/ceval.h:129:36: note: declared here
129 | Py_DEPRECATED(3.9) PyAPI_FUNC(int) PyEval_ThreadsInitialized(void);
| ^~~~~~~~~~~~~~~~~~~~~~~~~
source/py_gpio.c:1047:7: warning: ‘PyEval_InitThreads’ is deprecated 1047 | PyEval_InitThreads();
| ^~~~~~~~~~~~~~~~~~
In file included from /usr/include/python3.9/Python.h:145,
from source/py_gpio.c:23:
/usr/include/python3.9/ceval.h:130:37: note: declared here
130 | Py_DEPRECATED(3.9) PyAPI_FUNC(void) PyEval_InitThreads(void);
| ^~~~~~~~~~~~~~~~~~
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/py_pwm.c -o build/temp.linux-armv7l-3.9/source/py_pwm.o
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 -I/home/pi/todo_reminder_frame/env/include -I/usr/include/python3.9 -c source/soft_pwm.c -o build/temp.linux-armv7l-3.9/source/soft_pwm.o
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/source/c_gpio.o build/temp.linux-armv7l-3.9/source/common.o build/temp.linux-armv7l-3.9/source/constants.o build/temp.linux-armv7l-3.9/source/cpuinfo.o build/temp.linux-armv7l-3.9/source/event_gpio.o build/temp.linux-armv7l-3.9/source/py_gpio.o build/temp.linux-armv7l-3.9/source/py_pwm.o build/temp.linux-armv7l-3.9/source/soft_pwm.o -o build/lib.linux-armv7l-3.9/RPi/_GPIO.cpython-39-arm-linux-gnueabihf.so
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:41: multiple definition of `module_setup'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:41: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:40: multiple definition of `setup_error'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:40: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:39: multiple definition of `rpiinfo'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:39: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:38: multiple definition of `gpio_direction'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:38: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:37: multiple definition of `pin_to_gpio'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:37: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:36: multiple definition of `pin_to_gpio_rev3'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:36: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:35: multiple definition of `pin_to_gpio_rev2'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:35: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:34: multiple definition of `pin_to_gpio_rev1'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:34: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:33: multiple definition of `gpio_mode'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:33: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:33: multiple definition of `gpio_mode'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:33: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:40: multiple definition of `setup_error'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:40: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:39: multiple definition of `rpiinfo'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:39: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:38: multiple definition of `gpio_direction'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:38: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:41: multiple definition of `module_setup'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:41: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:37: multiple definition of `pin_to_gpio'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:37: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:36: multiple definition of `pin_to_gpio_rev3'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:36: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:34: multiple definition of `pin_to_gpio_rev1'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:34: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:35: multiple definition of `pin_to_gpio_rev2'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:35: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:42: multiple definition of `both_edge'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:42: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:41: multiple definition of `falling_edge'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:41: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:40: multiple definition of `rising_edge'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:40: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:39: multiple definition of `pud_down'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:39: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:38: multiple definition of `pud_up'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:38: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:37: multiple definition of `pud_off'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:37: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:36: multiple definition of `bcm'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:36: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:35: multiple definition of `board'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:35: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:34: multiple definition of `unknown'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:34: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:33: multiple definition of `spi'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:33: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:32: multiple definition of `i2c'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:32: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:31: multiple definition of `serial'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:31: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:30: multiple definition of `pwm'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:30: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:29: multiple definition of `output'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:29: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:28: multiple definition of `input'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:28: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:27: multiple definition of `low'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:27: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:26: multiple definition of `high'; build/temp.linux-armv7l-3.9/source/constants.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/constants.h:26: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:38: multiple definition of `gpio_direction'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:38: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/py_pwm.h:23: multiple definition of `PWMType'; build/temp.linux-armv7l-3.9/source/py_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/py_pwm.h:23: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:41: multiple definition of `module_setup'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:41: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:40: multiple definition of `setup_error'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:40: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:39: multiple definition of `rpiinfo'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:39: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:37: multiple definition of `pin_to_gpio'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:37: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:36: multiple definition of `pin_to_gpio_rev3'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:36: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:35: multiple definition of `pin_to_gpio_rev2'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:35: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:34: multiple definition of `pin_to_gpio_rev1'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:34: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/py_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:33: multiple definition of `gpio_mode'; build/temp.linux-armv7l-3.9/source/common.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/common.h:33: first defined here
/usr/bin/ld: build/temp.linux-armv7l-3.9/source/soft_pwm.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/soft_pwm.c:28: multiple definition of `threads'; build/temp.linux-armv7l-3.9/source/event_gpio.o:/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/source/event_gpio.c:60: 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: /home/pi/todo_reminder_frame/env/bin/python -u -c 'import io, os, sys, setuptools, tokenize; sys.argv = '"'"'/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/setup.py'"'"'; __file__='"'"'/tmp/pip-install-igg23bd3/rpi-gpio_cd65c343ec424678ac18aea0d0a01521/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-t3eozh0v/install-record.txt --single-version-externally-managed --compile --install-headers /home/pi/todo_reminder_frame/env/include/site/python3.9/RPi.GPIO Check the logs for full command output.
Any assistance resolving this would be helpful.
Running:
Pi 3 B
Raspberry Pi OS 11 (Bullseye)
I was able to get past this by installing by installing GPIO manually with:
export CFLAGS=-fcommon
pip3 install RPi.GPIO -
stephencross WARNING: The sample code does not Sleep the screen after updating it. As a result, the screen could become damaged. Tech support for Waveshare indicated the screen should be put to sleep after updating it. This information is also available on the wiki page at https://www.waveshare.com/wiki/E-Paper_Driver_HATReply
To fix the existing code. The Sleep method needs to be run when the display update is complete. Then, before updating the display, init needs to be executed. I fixed the sample code by adding an init method to the ToDoDisplay class:
def init(self):
self.paper.init()
The called Sleep and Init in the app.py while loop:
while True:
self._tick()
self.pc.sleep()
time.sleep(self.update_every_x_seconds)
self.pc.init()