libzmq/4.3.4+3

[brief]

ZeroMQ core engine in C++, implements ZMTP/3.1

Build Status Build status Coverage Status

Welcome

The ZeroMQ lightweight messaging kernel is a library which extends the standard socket interfaces with features traditionally provided by specialised messaging middleware products. ZeroMQ sockets provide an abstraction of asynchronous message queues, multiple messaging patterns, message filtering (subscriptions), seamless access to multiple transport protocols and more.

Supported platforms

Libzmq is mainly written in C++98 with some optional C++11-fragments. For configuration either autotools or CMake is employed. See below for some lists of platforms, where libzmq has been successfully compiled on.

Supported platforms with primary CI

OS and version Architecture Compiler and version Build system Remarks
Android NDK r20 arm, arm64, x86, x86_64 llvm (see NDK) autotools DRAFT
Ubuntu 14.04.5 LTS (trusty) amd64 clang 5.0.0 autotools STABLE, extras: GSSAPI, PGM, NORM, C++98 mode only
Ubuntu 14.04.5 LTS (trusty) amd64 gcc 4.8.4 autotools STABLE, DRAFT, extras: GSSAPI, PGM, NORM, TIPC, IPV6, also POLLER=poll, POLLER=select, also valgrind and address sanitizer executions
Ubuntu 14.04.5 LTS (trusty) amd64 gcc 4.8.4 CMake 3.12.2 STABLE
Windows Server 2012 R2 x86 Visual Studio 2008 CMake 3.12.2 DRAFT
Windows Server 2012 R2 x86 Visual Studio 2010 SP1 CMake 3.12.2 DRAFT
Windows Server 2012 R2 x86 Visual Studio 2012 Update 5 CMake 3.12.2 DRAFT
Windows Server 2012 R2 x86, amd64 Visual Studio 2013 Update 5 CMake 3.12.2 DRAFT, STABLE (x86 Release only), also POLLER=epoll
Windows Server 2012 R2 x86 Visual Studio 2015 Update 3 CMake 3.12.2 DRAFT
Windows Server 2016 x86 Visual Studio 2017 15.9.6 CMake 3.13.3 DRAFT
cygwin 3.0.0 on Windows Server 2012 R2 amd64 gcc 7.4.0 CMake 3.6.2 DRAFT
MSYS2 ? on Windows Server 2012 R2 amd64 gcc 6.4.0 CMake ? DRAFT
Mac OS X 10.13 amd64 Xcode 9.4.1, Apple LLVM 9.1.0 autotools STABLE, DRAFT
Mac OS X 10.13 amd64 Xcode 9.4.1, Apple LLVM 9.1.0 CMake 3.11.4 DRAFT

Note: the platforms are regularly updated by the service providers, so this information might get out of date without any changes on the side of libzmq. For Appveyor, refer to https://www.appveyor.com/updates/ regarding platform updates. For travis-ci, refer to https://changelog.travis-ci.com/ regarding platform updates.

Supported platforms with secondary CI

OS and version Architecture Compiler and version Build system Remarks
CentOS 6 x86, amd64 ? autotools
CentOS 7 amd64 ? autotools
Debian 8.0 x86, amd64 ? autotools
Debian 9.0 ARM64, x86, amd64 ? autotools
Fedora 28 ARM64, ARM32, amd64 ? autotools
Fedora 29 ARM64, ARM32, amd64 ? autotools
Fedora Rawhide ARM64, ARM32, amd64 ? autotools
RedHat Enterprise Linux 7 amd64, ppc64 ? autotools
SuSE Linux Enterprise 12 SP4 ARM64, amd64, ppc64, s390x ? autotools
SuSE Linux Enterprise 15 amd64 ? autotools
xUbuntu 12.04 x86, amd64 ? autotools
xUbuntu 14.04 x86, amd64 ? autotools
xUbuntu 16.04 x86, amd64 ? autotools
xUbuntu 18.04 x86, amd64 ? autotools
xUbuntu 18.10 x86, amd64 ? autotools

Supported platforms with known active users

At the time of writing, no explicit reports have been available. Please report your experiences by opening a PR adding an entry or moving an entry from the section below.

Under "last report", please name either the SHA1 in case of an unreleased version, or the version number in case of a released version.

OS and version Architecture Compiler and version Build system Last report Remarks
Solaris 10 x86, amd64, sparc GCC 8.1.0 CMake 2019/03/18
DragonFly BSD amd64 gcc 8.3 autotools 2018/08/07 git-72854e63
IBM i ppc64 gcc 6.3 autotools 2019/10/02 git-25320a3
QNX 7.0 x86_64 gcc 5.4.0 CMake 4.3.2

Supported platforms without known active users

Note: this list is incomplete and inaccurate and still needs some work.

OS and version Architecture Compiler and version Build system Remarks
Any Linux distribution x86, amd64 gcc ?+, clang ?+, icc ?+ autotools, CMake
SunOS, Solaris x86, amd64 SunPro autotools, CMake
GNU/kFreeBSD ? ? autotools, CMake
FreeBSD ? ? autotools, CMake
NetBSD ? ? autotools, CMake
OpenBSD ? ? autotools, CMake
DragonFly BSD amd64 gcc 8.3 autotools, CMake
HP-UX ? ? autotools, CMake
GNU/Hurd ? ? autotools
VxWorks 6.8 ? ? ?
Windows CE ? ? ?
Windows UWP ? ? ?
OpenVMS ? ? ?

Unsupported platforms

OS and version Architecture Compiler and version Remarks
QNX 6.3 ? gcc 3.3.5 see #3371, support was added by a user, but not contributed to upstream
Windows 10 ARM, ARM64 Visual Studio 2017 see #3366, probably only minor issues

For more details, see here.

For some platforms (Linux, Mac OS X), prebuilt binary packages are supplied by the ZeroMQ organization. For other platforms, you need to build your own binaries.

Installation of binary packages

Linux

For Linux users, pre-built binary packages are available for most distributions. Note that DRAFT APIs can change at any time without warning, pick a STABLE build to avoid having them enabled.

Latest releases

DEB

OBS release stable OBS release draft

RPM

OBS release stable OBS release draft

Bleeding edge packages

DEB

OBS release stable OBS release draft

RPM

OBS release stable OBS release draft

Example: Debian 9 latest release, no DRAFT apis

echo "deb http://download.opensuse.org/repositories/network:/messaging:/zeromq:/release-stable/Debian_9.0/ ./" >> /etc/apt/sources.list
wget https://download.opensuse.org/repositories/network:/messaging:/zeromq:/release-stable/Debian_9.0/Release.key -O- | sudo apt-key add
apt-get install libzmq3-dev

OSX

For OSX users, packages are available via brew.

brew install zeromq

Build from sources

To build from sources, see the INSTALL file included with the distribution.

Android

To build from source, see README file in the android build directory.

Resources

Extensive documentation is provided with the distribution. Refer to doc/zmq.html, or "man zmq" after you have installed libzmq on your system.

Website: http://www.zeromq.org/

Development mailing list: zeromq-dev@lists.zeromq.org Announcements mailing list: zeromq-announce@lists.zeromq.org

Git repository: http://github.com/zeromq/libzmq

ZeroMQ developers can also be found on the IRC channel #zeromq, on the Freenode network (irc.freenode.net).

License

The project license is specified in COPYING and COPYING.LESSER.

libzmq is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License (LGPL) as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.

As a special exception, the Contributors give you permission to link this library with independent modules to produce an executable, regardless of the license terms of these independent modules, and to copy and distribute the resulting executable under terms of your choice, provided that you also meet, for each linked independent module, the terms and conditions of the license of that module. An independent module is a module which is not derived from or based on this library. If you modify this library, you must extend this exception to your version of the library.

libzmq is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

Contributing

This project uses C4(Collective Code Construction Contract) process for contributions.

version 4.3.4+3
license LGPL-3.0-or-laterGNU Lesser General Public License v3.0 or later
repository https://pkg.cppget.org/1/stable
download libzmq-4.3.4+3.tar.gz
sha256 0ed3cc9209d396a9d1574f07225b97fd07f4ef3ab0e49344358559352ef9fcd1
project ZeroMQ
url zeromq.org/
doc-url api.zeromq.org/
src-url github.com/zeromq/libzmq
package-url github.com/build2-packaging/ZeroMQ-libzmq
package-email packaging@build2.orgMailing list
topics C++

Reviews

fail 0
pass 1

Builds

toolchain public-0.17.0
target aarch64-linux-gnu
tgt config linux_debian_12-gcc_13
timestamp 2025-08-23 11:17:40 UTC (17:34 minutes ago)
result warning (update) | warning (test-installed) | log | rebuild
toolchain public-0.17.0
target aarch64-linux-gnu
tgt config linux_debian_12-clang_17_libc++
timestamp 2025-08-23 10:57:11 UTC (38:03 minutes ago)
result warning (update) | log | rebuild
toolchain public-0.17.0
target aarch64-linux-gnu
tgt config linux_debian_12-clang_17
timestamp 2025-08-23 10:55:57 UTC (39:17 minutes ago)
result warning (update) | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_fedora_40-gcc_14-bindist
timestamp 2025-08-23 10:47:04 UTC (48:10 minutes ago)
result error (update) | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_12-gcc_12-bindist
timestamp 2025-08-21 13:40:51 UTC (01 21:54:23 days ago)
result warning (update) | warning (test-installed) | log | rebuild
toolchain public-0.17.0
target aarch64-linux-gnu
tgt config linux_debian_12-clang_18
timestamp 2025-08-21 13:30:36 UTC (01 22:04:38 days ago)
result warning (update) | log | rebuild
toolchain public-0.17.0
target aarch64-linux-gnu
tgt config linux_debian_12-clang_18-O3
timestamp 2025-08-21 13:28:22 UTC (01 22:06:52 days ago)
result warning (update) | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_12-gcc_13.1
timestamp 2025-08-21 13:27:31 UTC (01 22:07:43 days ago)
result warning (update) | warning (test-installed) | log | rebuild
toolchain public-0.17.0
target x86_64-microsoft-win32-msvc14.3
tgt config windows_10-clang_18_llvm_msvc_17.10-O2
timestamp 2025-08-21 13:23:33 UTC (01 22:11:41 days ago)
result warning (update) | warning (test-installed) | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_12-clang_17_libc++
timestamp 2025-08-21 13:15:21 UTC (01 22:19:53 days ago)
result warning (update) | log | rebuild
toolchain public-0.17.0
target x86_64-microsoft-win32-msvc14.3
tgt config windows_10-msvc_17.10
timestamp 2025-08-21 13:11:57 UTC (01 22:23:17 days ago)
result warning (update) | warning (test-installed) | log | rebuild
toolchain public-0.17.0
target x86_64-microsoft-win32-msvc14.3
tgt config windows_10-clang_17_msvc_msvc_17.10
timestamp 2025-08-21 13:08:51 UTC (01 22:26:23 days ago)
result warning (update) | warning (test-installed) | log | rebuild
toolchain public-0.17.0
target x86_64-microsoft-win32-msvc14.3
tgt config windows_10-msvc_17.8
timestamp 2025-08-21 13:08:22 UTC (01 22:26:52 days ago)
result warning (update) | warning (test-installed) | log | rebuild
toolchain public-0.17.0
target aarch64-linux-gnu
tgt config linux_debian_12-clang_18_libc++-static_O3
timestamp 2025-08-21 13:08:17 UTC (01 22:26:57 days ago)
result warning (update) | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_12-clang_17
timestamp 2025-08-21 13:07:34 UTC (01 22:27:40 days ago)
result warning (update) | log | rebuild
toolchain public-0.17.0
target aarch64-linux-gnu
tgt config linux_debian_12-clang_18-static_O3
timestamp 2025-08-21 12:40:13 UTC (01 22:55:01 days ago)
result warning (update) | log | rebuild
toolchain public-0.17.0
target aarch64-linux-gnu
tgt config linux_debian_12-gcc_14-ndebug_O3
timestamp 2025-08-21 12:14:50 UTC (01 23:20:24 days ago)
result error (update) | log | rebuild
toolchain public-0.17.0
target aarch64-linux-gnu
tgt config linux_debian_12-gcc_14
timestamp 2025-08-21 12:12:43 UTC (01 23:22:31 days ago)
result error (update) | log | rebuild
toolchain public-0.17.0
target aarch64-linux-gnu
tgt config linux_debian_12-gcc_14-static_O3
timestamp 2025-08-21 12:12:13 UTC (01 23:23:01 days ago)
result error (update) | log | rebuild
toolchain public-0.17.0
target aarch64-linux-gnu
tgt config linux_debian_12-gcc_14-O3
timestamp 2025-08-21 12:11:37 UTC (01 23:23:37 days ago)
result error (update) | log | rebuild
toolchain public-0.17.0
target x86_64-microsoft-win32-msvc14.3
tgt config windows_10-msvc_17.10-static_O2
timestamp 2025-08-21 12:09:17 UTC (01 23:25:57 days ago)
result warning (update) | warning (test-installed) | log | rebuild
toolchain public-0.17.0
target x86_64-microsoft-win32-msvc14.3
tgt config windows_10-clang_18_llvm_msvc_17.10-static_O2
timestamp 2025-08-21 12:01:49 UTC (01 23:33:26 days ago)
result warning (update) | error (test-installed) | log | rebuild
toolchain public-0.17.0
target x86_64-microsoft-win32-msvc14.3
tgt config windows_10-clang_18_llvm_msvc_17.10
timestamp 2025-08-21 12:01:45 UTC (01 23:33:29 days ago)
result warning (update) | error (test) | log | rebuild
toolchain public-0.17.0
target x86_64-microsoft-win32-msvc14.3
tgt config windows_10-msvc_17.8-static_O2
timestamp 2025-08-21 11:58:11 UTC (01 23:37:03 days ago)
result warning (update) | error (test) | log | rebuild
toolchain public-0.17.0
target x86_64-microsoft-win32-msvc14.3
tgt config windows_10-msvc_17.8-O2
timestamp 2025-08-21 11:57:28 UTC (01 23:37:46 days ago)
result warning (update) | error (test) | log | rebuild
toolchain public-0.17.0
target x86_64-microsoft-win32-msvc14.3
tgt config windows_10-msvc_17.10-O2
timestamp 2025-08-21 11:56:45 UTC (01 23:38:29 days ago)
result warning (update) | error (test-installed) | log | rebuild
toolchain public-0.17.0
target x86_64-w64-mingw32
tgt config windows_10-gcc_13.2_mingw_w64-O2
timestamp 2025-08-21 11:56:27 UTC (01 23:38:47 days ago)
result error (update) | log | rebuild
toolchain public-0.17.0
target x86_64-w64-mingw32
tgt config windows_10-gcc_13.2_mingw_w64
timestamp 2025-08-21 11:56:11 UTC (01 23:39:03 days ago)
result error (update) | log | rebuild
toolchain public-0.17.0
target x86_64-w64-mingw32
tgt config windows_10-gcc_13.2_mingw_w64-static_O2
timestamp 2025-08-21 11:53:39 UTC (01 23:41:35 days ago)
result error (update) | log | rebuild
toolchain public-0.17.0
target x86_64-freebsd14.1
tgt config freebsd_14-clang_18
timestamp 2025-08-21 11:51:37 UTC (01 23:43:37 days ago)
result error (update) | log | rebuild
toolchain public-0.17.0
target x86_64-freebsd14.1
tgt config freebsd_14-clang_18-O3
timestamp 2025-08-21 11:50:43 UTC (01 23:44:32 days ago)
result error (update) | log | rebuild
toolchain public-0.17.0
target aarch64-linux-gnu
tgt config linux_debian_12-clang_18_libc++
timestamp 2025-08-21 11:50:32 UTC (01 23:44:42 days ago)
result warning (update) | log | rebuild
toolchain public-0.17.0
target aarch64-linux-gnu
tgt config linux_debian_12-clang_18_libc++-O3
timestamp 2025-08-21 11:49:59 UTC (01 23:45:15 days ago)
result warning (update) | log | rebuild
toolchain public-0.17.0
target x86_64-freebsd14.1
tgt config freebsd_14-clang_18-static_O3
timestamp 2025-08-21 11:48:55 UTC (01 23:46:19 days ago)
result error (update) | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_12-gcc_14-ndebug_O3
timestamp 2025-08-21 11:44:53 UTC (01 23:50:21 days ago)
result error (update) | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_12-gcc_14
timestamp 2025-08-21 11:43:44 UTC (01 23:51:30 days ago)
result error (update) | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_12-gcc_14-O3
timestamp 2025-08-21 11:43:12 UTC (01 23:52:02 days ago)
result error (update) | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_12-gcc_14-static_O3
timestamp 2025-08-21 11:41:56 UTC (01 23:53:18 days ago)
result error (update) | log | rebuild
toolchain public-0.17.0
target x86_64-freebsd13.3
tgt config freebsd_13-clang_17
timestamp 2025-08-21 11:39:05 UTC (01 23:56:09 days ago)
result error (update) | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_ubuntu_24.04-gcc_13-bindist
timestamp 2025-08-21 11:37:31 UTC (01 23:57:43 days ago)
result error (update) | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_12-clang_18
result unbuilt
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_12-clang_18-O3
result unbuilt
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_12-clang_18-static_O3
result unbuilt
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_12-clang_18_libc++
result unbuilt
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_12-clang_18_libc++-O3
result unbuilt
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_12-clang_18_libc++-static_O3
result unbuilt
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_fedora_39-gcc_13-bindist
result unbuilt
toolchain public-0.17.0
target x86_64-apple-darwin22.5.0
tgt config macos_13-clang_15.0
result unbuilt
toolchain public-0.17.0
target x86_64-apple-darwin23.5.0
tgt config macos_14-clang_15.0
result unbuilt
toolchain public-0.17.0
target x86_64-apple-darwin23.5.0
tgt config macos_14-clang_15.0-O3
result unbuilt
toolchain public-0.17.0
target x86_64-apple-darwin23.5.0
tgt config macos_14-clang_15.0-static_O3
result unbuilt
toolchain public-0.17.0
target x86_64-apple-darwin23.5.0
tgt config macos_14-gcc_14_homebrew
result unbuilt
toolchain public-0.17.0
target x86_64-apple-darwin23.5.0
tgt config macos_14-gcc_14_homebrew-O3
result unbuilt
toolchain public-0.17.0
target x86_64-apple-darwin23.5.0
tgt config macos_14-gcc_14_homebrew-static_O3
result unbuilt