windows下怎么使用zeromq

我在zeromq的官网下载了exe的安装文件,想用c++进行学习,我看到网上的例子都是直接 #include<zmq.h>,但是我安装完成后,新建一个c++的工程,自己调用 #include <zmq.h>但是却出现错误,提示没有找到这个zmq.h文件。
我也试了zmq官网给出的例子,想直接编译也出现相同的问题(提示没有找到这个zmq.h文件。)

现在zmq的文章好像不多,安装的更没多少,希望会zmq的哥们能解答下我的问题,谢谢!


我也遇到这个问题,是你没把库路径引入进去。我用VS2010
解决方案:右键单击【属性】-【配置属性】-【VC++目录】-【包含目录】。把你的zeromq源码中zmq.h所在录井引入进去。就OK了
D:\ZMQ\zeromq-3.2.3\include(其中包含必要的zmq.h)


我的问题是这样:
1. zmq安装在c:\Program Files\ZeroMQ 3.2.3\
2. Visual Studio 2010配置如下:
1)Project > Property > C/C++ > General > Additional Include Dictionaries 
添加:C:\Program Files\ZeroMQ 3.2.3\include
2)Project > Property > Linker > General > Additional Library Dictionaries 
添加:C:\Program Files\ZeroMQ 3.2.3\lib
3)2)Project > Property > Linker > Input > Additional Dependencies
添加:c:\Program Files\ZeroMQ 3.2.3\lib\libzmq-v100-mt-gd-3_2_3.lib

但是在编译如下代码时,总是提示:
Error 1 error C2653: 'zmq' : is not a class or namespace name
不知道是什么原因,还请看到的大侠赐教!

代码如下:

C/C++ code
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
//
// Hello World server in C++
// Binds REP socket to tcp://*:5555
// Expects "Hello" from client, replies with "World"
//
#include <zmq.h>
#include <string>
#include <iostream>
 
int  main () {
     // Prepare our context and socket
     zmq::context_t context (1);
     zmq::socket_t socket (context, ZMQ_REP);
     socket.bind ( "tcp://*:5555" );
     while  ( true ) {
         zmq::message_t request;
         // Wait for next request from client
         socket.recv (&request);
         std::cout <<  "Received Hello"  << std::endl;
         // Do some 'work'
         Sleep (1);
         // Send reply back to client
         zmq::message_t reply (5);
         memcpy  (( void  *) reply.data (),  "World" , 5);
         socket.send (reply);
     }
     return  0;
}
zmq.h本身并没有定义zmq命名空间,  zmq 命名空间定义是在 zmq.hpp 里面打包提供的,  
3.0以后 zmq.hpp 已经分拆到另外项目(zmq c++绑定)
到这里: 
https://github.com/zeromq/cppzmq

下载 zmq.hpp 然后引用就行了 3)2)Project > Property > Linker > Input > Additional Dependencies
添加:c:\Program Files\ZeroMQ 3.2.3\lib\libzmq-v100-mt-3_2_3.lib

好像这样改一下就好了。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值