zeromq / pyzmq

PyZMQ: Python bindings for zeromq
http://zguide.zeromq.org/py:all
BSD 3-Clause "New" or "Revised" License
3.62k stars 635 forks source link

Stopped installing in imx6ul board with multiple errors #1995

Closed mgsanava closed 1 month ago

mgsanava commented 1 month ago

Please use this template for reporting suspected bugs or requests for help.

Issue description

pip3 install pyzmq==22.0.3or pip3 install pyzmq does not install this package anymore on imx6ul based single board computer

Environment

Hardware: NXP imx6ul (https://www.phytec.com/product/phycore-imx6ul/)

Minimal test code / Steps to reproduce the issue

  1. Not required. This is Installation error. NOTE: On desktop distros, installation is still fine. NOTE: This problem occurred only yesterday. All the previous days it was installing fine.

What's the actual result? (include assertion message & call stack if applicable)

  1. Attached all possible trials pyzmqerror.txt
  2. Removed other packages which are required for our application (python-string-utils jsonschema websockets websocket-client schedule aiofiles ocpp) and tried installing only pyzmq. Did not work.
  3. Mostly tried solutions provided by ChatGPT.

What's the expected result?

I know that this particular hardware will be unavailable for you to test. Please take help of logs and let me know.

Thanks!

minrk commented 1 month ago

First, always make sure pip is up-to-date (pip install --upgrade pip and show pip --version).

Second, when it compiles from source, it suggests you have no compiler:

error: command 'arm-phytec-linux-gnueabi-g++' failed: No such file or directory

You need whatever the appropriate Python Extension build dependencies are for your system (e.g. python3-dev on debian/ubuntu). This should be generic, for any Python extension, not specific to pyzmq.

mgsanava commented 1 month ago

thanks for the suggestion. cross compilation was the only method to solve this issue. we had to include the package like this in the following file: yocto/build/local.conf IMAGE_INSTALL_append = " python3-pyzmq".

"arm-phytec-linux-gnueabi-g++" was available in the yocto toolchain and was not in the compiled image due to size constraints. whole OS is around 180MB.