What people say about ZeroMQ...

ZeroMQ comes as source code licensed under a generous open source license. This page lists the official distributions built, released, and supported by iMatix. The community wiki may provide other packages.

Current Stable Release 4.1.5

The current 4.x stable release is v4.1.5, from 2016/06/17, (what changed?):

Check your language binding and see whether it already supports ZeroMQ v4.x. We recommend this release to anyone developing new applications with ZeroMQ. All 4.x releases aim for compatibility with stable releases back to 2.2.0.

Legacy Stable Release 3.2.5

The legacy 3.x stable release is v3.2.5, from 2014/10/14, (what changed?):

We recommend anyone using 3.2.x or 2.2.x to upgrade to 4.1.x. Please ask the zeromq-dev maling list if you need help doing this.

Development master

Our goal is that the development master is almost perfect, all the time. You can get the latest development master at any time via git. If you're developing new apps, we recommend you test against the master regularly.

To build from master on Linux and OS/X:

git clone
./ && ./configure && make -j 4
make check && make install && sudo ldconfig

Or, using CMake:

git clone
mkdir cmake-build && cd cmake-build
cmake .. && make -j 4
make test && make install && sudo ldconfig

To build from master on Windows using VS2015:

git clone
cd libzmq\builds\msvc
cd build

Previous releases

You can get earlier 3.x releases, earlier 4.x releases, and previous releases from

Other software

If you are working in C/C++ you will want to get CZMQ, the high-level C binding, which adds many useful classes on top of ZeroMQ, including UDP and gossip discovery, a reactor, containers, smart sockets, and actors for concurrent programming.

To build on UNIX-like systems

If you have free choice, the most comfortable OS for developing with ZeroMQ is probably Ubuntu.

  1. Make sure that libtool, pkg-config, build-essential, autoconf, and automake are installed.
  2. Check whether uuid-dev package, uuid/e2fsprogs RPM or equivalent on your system is installed.
  3. Unpack the .tar.gz source archive.
  4. Run ./configure, followed by make.
  5. To install ZeroMQ system-wide run sudo make install.
  6. On Linux, run sudo ldconfig after installing ZeroMQ.

To see configuration options, run ./configure --help. Read INSTALL for more details.

To build on Windows

  1. You need Visual Studio 2008 or later.
  2. Unpack the .zip source archive.
  3. In Visual C++ open the solution builds\msvc\msvc.sln.
  4. Build the solution.
  5. ZeroMQ libraries will be in the lib subdirectory.

Language bindings

ZeroMQ comes with the low-level C API. High-level bindings exist in 40+ languages including Python, Java, PHP, Ruby, C, C++, C#, Erlang, Perl, and more.

For complete list of language bindings have a look here.

Pure Language Stacks

ZeroMQ also comes in a pure Java stack called JeroMQ, and a pure C# stack called NetMQ. These are both official projects and supported by the ZeroMQ community.

Tuning ZeroMQ

This wiki page holds tips on tuning ZeroMQ for your platform. You can add your own tips as you discover them.


To enable the OpenPGM extension on supported platforms use the --with-pgm option to configure.

To use a non-bundled version of OpenPGM, copy the libpgm tarball into foreign, i.e.


Then run configure as follows:

$ cd zeromq2-1
$ ./configure --with-pgm=libpgm-5.1.115~dfsg

The name needs to match the tarball name.