zeromq安装使用教程(最详细)

zeromq基本信息

zeromq用很多中编译使用的方法。直接使用vs编译(不建议使用,长时间未维护很多报错)vcpkg(包管理器下载) cmake(推荐)
zeromq的适配好像和win10出现了问题,不知道是我系统的原因还是,折腾了几天之后还是在虚拟机上的win7系统下编译使用成功

zeromq接口类型

其中在原生库Libzmq中衍生了很多中语言的高层次封装接口,读者根据需对应求选取使用

名称 接口类型 url 说明
libzmq C https://github.com/zeromq/libzmq 用C++实现的,是最底层的库,许多其他语言的实现都是基于libzmq的
czmq C https://github.com/zeromq/czmq 是对libzmq接口的一个高层次的封装,更加易于使用
zmqpp C++ https://github.com/zeromq/zmqpp 是对libzmq接口的一个高层次的封装,可以说更偏向于oop,并且也实现了认证机制
cppzmq C++ https://github.com/zeromq/cppzmq 是对libzmq接口的一个封装,相对于zmqpp来讲,封装层次没有那么高
azmq C++ https://github.com/zeromq/azmq 事件循环使用的是boost.asio来支持的,很好的解决了zmq与boost.asio整合的问题
czmqpp C++ https://github.com/zeromq/czmqpp 感觉热度不是很高
fbzmq C++ https://github.com/facebook/fbzmq 是facebook封装的,有很多fb的元素
NetMQ C# https://github.com/zeromq/netmq 完全使用C#语言实现,不依赖于libzmq库
clrzmq4 C# https://github.com/zeromq/clrzmq4 是对libzmq接口的封装,依赖于libzmq库
JeroMQ java https://github.com/zeromq/jeromq 完全使用java语言实现,不依赖于libzmq
JZMQ java https://github.com/zeromq/jzmq 是对libzmq接口的封装,依赖于libzmq库
jczmq java https://github.com/zeromq/czmq/tree/master/bindings/jni 通过JNI调用czmq
Pyzmq pyth https://github.com/zeromq/pyzmq 是对libzmq接口的封装,依赖于libzmq库
rbzmq ruby https://github.com/zeromq/rbzmq 是对libzmq接口的封装,依赖于libzmq库
rust-zmq rust https://github.com/erickt/rust-zmq 是对libzmq接口的封装,依赖于libzmq库
zmq4 go https://github.com/pebbe/zmq4 是对libzmq接口的封装,依赖于libzmq库
goczmq go https://github.com/zeromq/goczmq 是对libzmq接口的封装,依赖于libzmq库

安装环境

下面总结一下安装的流程,安装之前我们要知道zeromq我们安装只是最底层的原生库Libzmq
这里我们安装用最底层的Libzmq 示例
失败环境:windows10 …
成功环境:windows7 X64 vs2017 cmake version 3.20.2

源码地址:https://github.com/zeromq/libzmq

vs直接编译使用(不推荐使用)

1.从GitHub下拉下源码,解压缩到自己使用对应的文件夹,进入图示文件夹打开 .sln文件夹
在这里插入图片描述

2.将Libzmq生成
在这里插入图片描述

上面的操作一下就结束了,如果你成功了恭喜你,可以停止观看博客,皆大欢喜,但是大部分同学都是报很多错
网上能解决一部分,但是很多解决起来很麻烦,怎么解决我就不说了,之后你使用的项目,使用静态库链接和动态库链接技术就可以使用了zmq了

vcpkg安装

先安装vcpkg
用之前先将vs设置为英语包
打开
在这里插入图片描述
设置为英语
在这里插入图片描述

源码:https://github.com/microsoft/vcpkg
解压到对应文件夹
点击对应脚本文件(.bat .sh)或者cmd中./文件名 调用脚本

在这里插入图片描述

cmd中或者Windows PowerShell中cd进入源码文件地址,我用的是cmd

.\vcpkg.exe search 查看对应的可以使用的源码库 最后偶zmq库

vcpkg默认安装32位的库下载对应库这里我们下载zermq 64位
vcpkg install zeromq:x64-windows

.\vcpkg.exe list 查看已经安装的源码库 这个时候已经安装好了zermq

.\vcpkg integrate install 集成到全局 可以单个项目 这里就说了自行百度

这个时候项目就可以使用zermq了 但是我的还是报错了
0x00007FFE846D3B19 (KernelBase.dll) (test1.exe 中)处有未经处理的异常: 0x40000015: %hs (参数: 0x00000231D09E5A70)。

cmake安装(推荐)

在这里插入图片描述

cmake安装是在win7下安装成的,但是win10操作一样

下载好cmake 选择qq式安装包安装

在这里插入图片描述

第一步选择对应的编译器版本 和程序版本 这里我选择的式win32

在这里插入图片描述

第三步open project 打开项目 生成libzeromq项目显示成功无报错,则成功

最后讲一下我的调用流程,网上看了很多静态链接的实现,一直没成功,我分析了源码自带的测试项目得出的流程(使用自行斟酌)
1.创建一个server服务端 代码来自zeromq官网 自带的c语言示例一开始就是zmq式引用不到的
在这里插入图片描述

使用流程
1.右击项目添加Libzmq 包
在这里插入图片描述

2.添加对应输出目录,编译成会自动生成的目录都会有,不加出现找不到dll文件错误

在这里插入图片描述

3.C/C++ 附加包含目录 包含这些目录 这些目录是我在tset项目中看到的句我还没深入研究,这里只是让项目跑起来
在这里插入图片描述

4.链接器添加对应的lib文件
在这里插入图片描述

5.创建对应的client客户端
在这里插入图片描述

6.右击解决方案 设置一次运行两个项目 serverDemo clientDemo

在这里插入图片描述

7.运行成功
在这里插入图片描述

你也可以使用win10这样操作,我感觉大体会相同,成功,皆大欢喜,不成功,同学继续加油,这里牵扯很多问题,加油!!!
如有错误评论区指导,谢谢

如果没有批评,赞美将毫无意义,欢迎指正批评。

路漫漫其修远兮,吾将上下而求索

评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值