在Visual Studio '13项目中设置ZeroMQ

时间:2015-01-02 03:48:47

标签: c++ visual-studio visual-studio-2013 zeromq

我正在努力让ZeroMQ与我的C ++项目一起工作。我想做ZeroMQ Hello World教程,如下所示:

//  Hello World server
#include <zmq.h>
#include <stdio.h>
#include <unistd.h>
#include <string.h>
#include <assert.h>

int main (void)
{
    //  Socket to talk to clients
    void *context = zmq_ctx_new ();
    void *responder = zmq_socket (context, ZMQ_REP);
    int rc = zmq_bind (responder, "tcp://*:5555");
    assert (rc == 0);

    while (1) {
        char buffer [10];
        zmq_recv (responder, buffer, 10, 0);
        printf ("Received Hello\n");
        sleep (1);          //  Do some 'work'
        zmq_send (responder, "World", 5, 0);
    }
    return 0;
}

但是,每当我尝试编译并运行它时,Visual Studio都说找不到zmq.h或我正在使用的任何ZeroMQ方法。我已经从http://zeromq.org/distro:microsoft-windows安装了ZeroMQ,我还需要做些什么才能让它工作?

2 个答案:

答案 0 :(得分:6)

包括标题:

  • 右键单击Project - &gt;属性 - &gt; C / C ++ - &gt;一般
  • 编辑&#39;其他包含目录&#39;
  • 添加C:\ Program Files \ ZeroMQ 4.0.4 \ include
  • 右键点击&#39;标头文件&#39; - &GT;添加 - &gt;现有项目 - &gt; C:\ Program Files \ ZeroMQ 4.0.4 \ include \ zmq.h

添加库目录:

  • 右键单击Project - &gt;属性 - &gt;链接器 - &gt;一般
  • 编辑&#39;其他图书馆目录&#39;
  • 添加C:\ Program Files \ ZeroMQ 4.0.4 \ lib \

链接到正确的库:

  • 右键单击Project - &gt;属性 - &gt;一般
  • 检查&#34;平台工具集&#34;,注意版本号(例如: v120
  • 配置属性 - &gt;链接器 - &gt;输入
  • 编辑&#39;其他相关性&#39;
  • 添加适当的工具集库(例如:libzmq- v120 -mt-gd-4_0_4.lib)&#34; -gd - &#34;是调试版本

确保您的应用是64位

  • 构建 - &gt;配置管理器
  • 有源解决方案平台 - &gt;新建...
  • 选择x64
  • 从Win32复制设置
  • 右键单击Project - &gt;属性 - &gt;链接器 - &gt;所有选项
  • 编辑&#34;输出文件&#34;设置为&#34;。\ x64 \ Debug \ whatever.exe&#34;

包含预编译的dll作为分发资源

  • 右键单击Project - &gt;属性 - &gt;构建事件 - &gt;建设后活动
  • 编辑&#34;命令行&#34;
  • 插入复制命令

例如:

copy /Y "C:\Program Files\ZeroMQ 4.0.4\bin\libzmq-v120-mt-gd-4_0_4.dll" "$(OutDir)"

答案 1 :(得分:1)

你应该先download and install 0MQ。 然后,您将能够将Project属性配置为指向正确的include和lib路径。