下载
请按照以下说明下载并安装所选的 ZeroMQ 库。
OS X
您需要安装并配置 Brew https://brew.sh.cn/
czmq 和 zyre 也可用。
Linux
Fedora
Ubuntu/Debian/Mint
apt-get install libzmq3-dev
Arch
SUSE
zypper install zeromq-devel
适用于 Debian, Ubuntu, Fedora, CentOS, RHEL, SUSE 的软件包
ZeroMQ 维护者通过 Open Build Service 为 i386, amd64, armv7, arm64, ppc64, s390x 提供了 libzmq, czmq, zyre, malamute, zproject 和 zproto 的预构建二进制软件包,这些软件包自动构建自最新的稳定版本或 Git 仓库中的最新提交(注意:取决于发行版)。
点击选择的发行版和版本,然后按照“前往下载仓库”的指引添加仓库。那里是仓库的 URL。请记住添加 GPG 密钥。
例如,要添加 Debian 9 并从最新的不包含 draft API 的稳定版本安装 libzmq 的开发软件包
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
要求
ZeroMQ 2.2.x 或更高版本。我们建议使用 ZeroMQ >= 3。C++11 兼容编译器。(g++ >= 4.7)
命令行客户端和测试还需要 libboost。
安装
可以使用标准的 make && make install
进行安装。如果安装了 boost 单元测试框架,可以运行 check
和 installcheck
进行健全性检查。要在 ZMQPP 之前使用 ZMQ4 安全特性,请按照如下所示安装 libsodium 和 libzmq –with-libsodium。
构建、检查和安装 libsodium
git clone git://github.com/jedisct1/libsodium.git cd libsodium ./autogen.sh ./configure && make check sudo make install sudo ldconfig cd ../
构建、检查和安装最新版本的 ZeroMQ
git clone git://github.com/zeromq/libzmq.git cd libzmq ./autogen.sh ./configure –with-libsodium && make sudo make install sudo ldconfig cd ../
现在安装 ZMQPP
git clone git://github.com/zeromq/zmqpp.git cd zmqpp make make check sudo make install make installcheck
最常用的覆盖选项是设置 CXX 来改变使用的编译器,以及设置 PREFIX 来改变安装位置。CXX 前缀应在所有目标上使用,因为编译器版本会用于构建路径。PREFIX 仅与安装目标相关。
cppzmq
的下载示例缺失。您想贡献吗?请按照以下步骤操作
git clone https://github.com/zeromq/zeromq.org
example_dir=content/docs/examples/cpp/cppzmq
cd zeromq.org && mkdir -p $example_dir
[ -s $example_dir/index.md ] || cat >$example_dir/index.md <<'EOF'
---
headless: true
---
EOF
cp archetypes/examples/download.md
$example_dir/download.md
构建与安装
构建需要最新版本的 CMake(Visual Studio 需要 2.8.12 或更高版本,其他需要 2.8 或更高版本)以及支持 C++11 的 C++ 编译器。目前已在以下环境测试过 -
- Xcode 5.1 on OS X 10.8
- Xcode 6 on OS X 10.9
- Xcode 6.4 on OS X 10.10
- Xcode 7.1 on OS X 10.11
- GCC 4.8 + Boost 1.48 on CentOS 6
- GCC 4.8 + Boost 1.53 on CentOS 7
- GCC 4.8 on Arch Linux and Ubuntu
- GCC 4.8 on Ubuntu
- GCC 5.3 + Boost 1.60 on Ubuntu
- Microsoft Visual Studio 2013 on Windows Server 2008 R2
库依赖项为 -
- Boost 1.48 or later
- ZeroMQ 4.0.x
测试和示例代码需要 -
在 Linux / OS X 上构建 -
$ mkdir build && cd build
$ cmake ..
$ make
$ make test
$ make install
在 Windows 上构建 -
> mkdir build
> cd build
> cmake ..
> cmake --build . --config Release
> ctest . -C Release
调用 CMake 后,您也可以从 build
目录中打开 Visual Studio 解决方案。
调用 CMake 时,使用 -DCMAKE_INSTALL_PREFIX
来改变默认安装位置。
调用 CMake 时,使用 -DBOOST_ROOT=<my custom Boost install>
和 -DZMQ_ROOT=<my custom ZeroMQ install>
来改变构建查找 Boost 和 ZeroMQ 的位置。或者设置 BOOST_ROOT
和 ZMQ_ROOT
环境变量。
czmqpp
的下载示例缺失。您想贡献吗?请按照以下步骤操作
git clone https://github.com/zeromq/zeromq.org
example_dir=content/docs/examples/cpp/czmqpp
cd zeromq.org && mkdir -p $example_dir
[ -s $example_dir/index.md ] || cat >$example_dir/index.md <<'EOF'
---
headless: true
---
EOF
cp archetypes/examples/download.md
$example_dir/download.md
fbzmq
的下载示例缺失。您想贡献吗?请按照以下步骤操作
git clone https://github.com/zeromq/zeromq.org
example_dir=content/docs/examples/cpp/fbzmq
cd zeromq.org && mkdir -p $example_dir
[ -s $example_dir/index.md ] || cat >$example_dir/index.md <<'EOF'
---
headless: true
---
EOF
cp archetypes/examples/download.md
$example_dir/download.md
clrzmq4
的下载示例缺失。您想贡献吗?请按照以下步骤操作
git clone https://github.com/zeromq/zeromq.org
example_dir=content/docs/examples/csharp/clrzmq4
cd zeromq.org && mkdir -p $example_dir
[ -s $example_dir/index.md ] || cat >$example_dir/index.md <<'EOF'
---
headless: true
---
EOF
cp archetypes/examples/download.md
$example_dir/download.md
安装
您可以通过在 rebar.config
中包含以下内容从 hex.pm 安装 chumak
{deps,[
{chumak, "X.Y.Z"}
]}.
其中 X.Y.Z 是其中一个发布版本。
有关 rebar3 依赖项的更多信息,请参阅rebar3 文档。
ezmq
的下载示例缺失。您想贡献吗?请按照以下步骤操作
git clone https://github.com/zeromq/zeromq.org
example_dir=content/docs/examples/erlang/ezmq
cd zeromq.org && mkdir -p $example_dir
[ -s $example_dir/index.md ] || cat >$example_dir/index.md <<'EOF'
---
headless: true
---
EOF
cp archetypes/examples/download.md
$example_dir/download.md
erlang-czmq
的下载示例缺失。您想贡献吗?请按照以下步骤操作
git clone https://github.com/zeromq/zeromq.org
example_dir=content/docs/examples/erlang/erlang-czmq
cd zeromq.org && mkdir -p $example_dir
[ -s $example_dir/index.md ] || cat >$example_dir/index.md <<'EOF'
---
headless: true
---
EOF
cp archetypes/examples/download.md
$example_dir/download.md
FsNetMQ
的下载示例缺失。您想贡献吗?请按照以下步骤操作
git clone https://github.com/zeromq/zeromq.org
example_dir=content/docs/examples/fsharp/fsnetmq
cd zeromq.org && mkdir -p $example_dir
[ -s $example_dir/index.md ] || cat >$example_dir/index.md <<'EOF'
---
headless: true
---
EOF
cp archetypes/examples/download.md
$example_dir/download.md
fszmq
的下载示例缺失。您想贡献吗?请按照以下步骤操作
git clone https://github.com/zeromq/zeromq.org
example_dir=content/docs/examples/fsharp/fszmq
cd zeromq.org && mkdir -p $example_dir
[ -s $example_dir/index.md ] || cat >$example_dir/index.md <<'EOF'
---
headless: true
---
EOF
cp archetypes/examples/download.md
$example_dir/download.md
要求
zmq4 只是 ZeroMQ 库的一个封装。它不包含库本身。因此您需要安装 ZeroMQ,包括其开发文件。在 Linux 和 Darwin 上,您可以使用($ 是命令提示符)进行检查
$ pkg-config --modversion libzmq
4.3.1
Go 编译器必须能够编译 C 代码。您可以使用此命令检查
$ go env CGO_ENABLED
1
您不能进行交叉编译。那将禁用 C。
Windows
使用 CGO_CFLAGS
和 CGO_LDFLAGS
环境变量构建,例如
$env:CGO_CFLAGS='-ID:/dev/vcpkg/installed/x64-windows/include'
$env:CGO_LDFLAGS='-LD:/dev/vcpkg/installed/x64-windows/lib -l:libzmq-mt-4_3_4.lib'
使用 libzmq-mt-4_3_4.dll
部署结果程序
安装
go get github.com/pebbe/zmq4
安装
依赖项
适用于 CZMQ master
go get github.com/zeromq/goczmq
CZMQ 库包含默认不构建的实验性类,但可以通过向 configure 传递 --enable-drafts
来构建。正在将对这些 draft 类的支持添加到 goczmq 中。要针对已使用 --enable-drafts
编译的 CZMQ 构建这些特性,请使用 go build -tags draft
。
适用于 CZMQ = 4.2
go get gopkg.in/zeromq/goczmq.v4
注意:CZMQ 4.2 尚未发布。
适用于 CZMQ 4.0 之前版本
go get gopkg.in/zeromq/goczmq.v1
zeromq4-haskell
的下载示例缺失。您想贡献吗?请按照以下步骤操作
git clone https://github.com/zeromq/zeromq.org
example_dir=content/docs/examples/haskell/zeromq4-haskell
cd zeromq.org && mkdir -p $example_dir
[ -s $example_dir/index.md ] || cat >$example_dir/index.md <<'EOF'
---
headless: true
---
EOF
cp archetypes/examples/download.md
$example_dir/download.md
用法
Maven
将其添加到您的 Maven 项目的 pom.xml
中
<dependency>
<groupId>org.zeromq</groupId>
<artifactId>jeromq</artifactId>
<version>0.5.3</version>
</dependency>
<!-- for the latest SNAPSHOT -->
<dependency>
<groupId>org.zeromq</groupId>
<artifactId>jeromq</artifactId>
<version>0.6.0-SNAPSHOT</version>
</dependency>
<!-- If you can't find the latest snapshot -->
<repositories>
<repository>
<id>sonatype-nexus-snapshots</id>
<url>https://oss.sonatype.org/content/repositories/snapshots</url>
<releases>
<enabled>false</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
Ant
要从 pom.xml
生成 ant 构建文件,请发出以下命令
JZMQ
的下载示例缺失。您想贡献吗?请按照以下步骤操作
git clone https://github.com/zeromq/zeromq.org
example_dir=content/docs/examples/java/jzmq
cd zeromq.org && mkdir -p $example_dir
[ -s $example_dir/index.md ] || cat >$example_dir/index.md <<'EOF'
---
headless: true
---
EOF
cp archetypes/examples/download.md
$example_dir/download.md
jczmq
的下载示例缺失。您想贡献吗?请按照以下步骤操作
git clone https://github.com/zeromq/zeromq.org
example_dir=content/docs/examples/java/jczmq
cd zeromq.org && mkdir -p $example_dir
[ -s $example_dir/index.md ] || cat >$example_dir/index.md <<'EOF'
---
headless: true
---
EOF
cp archetypes/examples/download.md
$example_dir/download.md
安装
安装包含预构建二进制文件的 ZeroMQ.js
npm install zeromq@6.0.0-beta.17
使用预构建二进制文件的要求
- Node.js 10.2+ 或 Electron 3+(需要 N-API 版本 3+)
预构建二进制文件
以下平台提供预构建二进制文件
- Linux on x86-64 with libstdc++.so.6.0.21+ (glibc++ 3.4.21+), for example
- Debian 9+ (Stretch or later)
- Ubuntu 16.04+ (Xenial or later)
- CentOS 8+
- Linux on x86-64 with musl, for example
- Alpine 3.3+
- MacOS 10.9+ on x86-64
- Windows on x86/x86-64
如果您的平台没有可用的预构建二进制文件,安装将尝试从源代码构建。
从源代码构建
如果预构建二进制文件不可用或您想在构建期间传递特定选项,您可以从源代码构建此软件包。
在尝试从源代码构建之前,请确保已安装以下内容
- Node.js 10+ or Electron 3+
- A working C++17 compiler toolchain with make
- Python 3 with Node 12.13+ (or legacy Python 2.7)
- CMake 2.8+
- curl
从源代码安装
npm install zeromq@6.0.0-beta.17 --build-from-source
如果您想链接共享 ZeroMQ 库,可以跳过下载 libzmq
并改为链接已安装的库,如下所示
npm install zeromq@6.0.0-beta.17 --zmq-shared
如果您希望使用任何 DRAFT socket,则还需要从源代码编译该库
npm install zeromq@6.0.0-beta.17 --zmq-draft
下载
除非您专门想开发 PyZMQ,否则我们建议从 PyPI 下载 PyZMQ 源代码或 wheels,或者使用 conda 安装。
您还可以从我们的 GitHub 仓库获取最新的源代码,但从仓库构建需要您安装最新的 Cython。
构建与安装
有关构建 pyzmq 的更多详细信息,请参阅我们的 Wiki。
我们为 macOS、Windows 和 Linux 构建 wheels,因此您可以使用以下命令在这些平台上获取二进制文件
pip install pyzmq
但使用 pip install pyzmq
从源代码编译应该在大多数环境中都有效。特别是在 macOS 上,请确保您使用的是最新版本的 pip (≥ 8),否则可能找不到正确的 wheels。
如果 wheels 因某些原因无法工作,或者您想强制编译 pyzmq(如果您已经按照您希望的方式安装和配置了 libzmq,这通常是首选),您可以使用以下命令强制安装
pip install --no-binary=:all: pyzmq
编译 pyzmq 时(例如,在 Linux 上使用 pip 安装),通常建议单独安装 zeromq,通过 homebrew、apt、yum 等工具
# Debian-based
sudo apt-get install libzmq3-dev
# RHEL-based
sudo yum install libzmq3-devel
如果这不可用,pyzmq 将尝试将 libzmq 构建为 Python 扩展,尽管这不保证有效。
从 git 仓库(包括 GitHub 上的发布标签)构建 pyzmq 需要 Cython。
安装
安装 libzmq.
如果 gem 安装抱怨找不到 libzmq 或头文件,只需将您的 libzmq 安装位置传递给 gem install 命令
gem install zmq -- --with-zmq-dir=/opt/local
在 Windows 上为库添加参数。例如
gem install zmq -- --with-zmq-dir=c:/src/zeromq-4.3.2 --with-zmq-lib=c:/src/zeromq-4.3.2/src/.libs
添加到构建过程
确定要在项目中使用的库的特定发布标签。
添加到 build.zig.zon
文件中,例如适用于 Zig 0.11
.{
.dependencies = .{
.zzmq = .{
.url = "https://github.com/nine-lives-later/zzmq/archive/refs/tags/v0.1.0-zig0.11.tar.gz",
.hash = "122080e22e9823dc0a4567c71553c4884978a33877c9b3d46f4594ca5f299d534f9b",
},
},
}
注意:如果哈希值不正确,请删除 .hash
字段,编译器错误将显示正确的值。从 Zig 0.12 开始,您还可以使用 zig fetch zzmq <url>
。
还需要将其添加到 build.zig
文件中
const zzmq = b.dependency("zzmq", .{
.target = target,
.optimize = optimize,
});
// Note: starting with zig 0.12 the function will be
// `exe.root_module.addImport` instead of `exe.addModule`
exe.addModule("zzmq", zzmq.module("zzmq"));
exe.linkSystemLibrary("czmq");
exe.linkLibC();
安装本地依赖项
还需要安装 CZMQ 开发库版本 4.0 或更高版本
# Building on Ubuntu, PoP_OS, ZorinOS, etc.
sudo apt install libczmq-dev
# Running on Ubuntu, PoP_OS, ZorinOS, etc.
sudo apt install libczmq