File README.zmq_draft.txt of Package zeromq
In order to accomodate installation in parallel with ZeroMQ components
built without draft socket support, the ZeroMQ draft components have
been installed under a unique filesystem prefix. The installation may
be described with the pkgconfig file installed within this prefix.
The pathnames for the draft installation may be illustrated in the
following, using an amd64 library dir as the draft component prefix.
- libdir: /usr/lib64/zmq-draft
- includedir: /usr/lib64/zmq-draft/include
- pkg config path: /usr/lib64/zmq-draft/pkgconfig
Given a single machine architecture, the exact installation pathanames
for an installed zeromq-draft-devel package may be determined using the
rpm shell command.
$ rpm -ql zeromq-draft-devel
/usr/lib64/zmq-draft
/usr/lib64/zmq-draft/include
/usr/lib64/zmq-draft/include/zmq.h
/usr/lib64/zmq-draft/include/zmq_utils.h
/usr/lib64/zmq-draft/libzmq.so
/usr/lib64/zmq-draft/pkgconfig
/usr/lib64/zmq-draft/pkgconfig/libzmq.pc
...
Example with pkg-config and Python:
pyzmq can be installed as linked to the zeromq-draft-devel libraries,
using the following shell command.
env ZMQ_DRAFT_API=1 \
PKG_CONFIG_PATHS=/usr/lib64/zmq-draft/pkgconfig:/usr/lib64/pkgconfig:/usr/lib/pkgconfig \
pip install -v pyzmq --no-binary pyzmq --no-cache --force pyzmq
The pyzmq installation can be tested for draft socket support, using
a unit test provided by the pyzmq project. This unit test should
evaluate without error.
python3 <<EOT
from zmq.tests.test_draft import TestDraftSockets
test = TestDraftSockets()
test.setUp()
test.test_client_server()
test.test_radio_dish
test.tearDown()
print("fin")
EOT
Further information about ZeroMQ draft sockets is avaialble in the
ZeroMQ manual pages (package zeromq-devel) and in the ZeroMQ HTML
documentation (package zeromq-doc-html).