I have been trying to install pyzmq (https://github.com/zeromq/pyzmq) on my OpenWrt router, using pip.
However, I can't succeed. I've tried the following:
pip install pyzmq, the terminal throws an error:
ERROR: Command errored out with exit status 1: /usr/bin/python2 -u -c 'import sys, setuptools, tokenize; sys.argv = '"'"'/tmp/pip-install-MJUq6m/pyzmq/setup.py'"'"'; __file__='"'"'/tmp/pip-install-MJUq6m/pyzmq/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-cN3XAz/install-record.txt --single-version-externally-managed --compile Check the logs for full command output.
I don't understand what it means and when I go to /var/log, there is no information there (I don't know if it is the right place to search for the log, anyway).
- Then, using the OpenWrt SDK (openwrt-sdk-18.06.2-x86-64_gcc-7.3.0_musl.Linux-x86_64) I thought I would be able to compile the python module on my computer. After reading the first answer in https://stackoverflow.com/questions/50218544/how-to-include-python-pip3-modules-in-openwrt-image , I tried it on my computer, but the terminal threw an error:
/home/inesmll/Downloads/openwrt-sdk-18.06.2-x86-64_gcc-7.3.0_musl.Linux-x86_64/include/toplevel.mk:209: recipe for target 'world' failed make: *** [world] Error 1
Note: I downloaded the folder of the sdk, executed
./scripts/feeds update -a and
./scripts/feeds install -a and then typed
make menuconfig (I checked that python was selected). Finally, I run
- Installing using the source code, by executing
python setup.py install. However, it throws an error in the end:
(...) Using bundled libzmq fetching https://github.com/zeromq/libzmq/releases/download/v4.3.2/zeromq-4.3.2.tar.gz into bundled error: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:727)> (...)
Although I don't know what it means, this solution would not work anyway, because pyzmq uses Cython, and thus I would need a C compiler, not present in the router.
- I've also installed pyzmq on my computer and then moved the folder "pyzmq-18.1.0.dist-info" from "site-packages" to the "site-packages" folder in the OpenWrt router. However, the lib is still not recognized.
Note: both the router and my computer have the same architecture (x86_64) and libzmq-nc is installed on the router. Also, I am required to use python on my solution.
Nothing works, I don't know what else to do...
If you guys can't solve this problem, could you please suggest me another queueing system that is easier to install on OpenWrt? My preference is zeromq because it is distributed, but I'm open to other solutions.