【问题标题】:ZeroMQ linker error C++ZeroMQ 链接器错误 C++
【发布时间】:2010-12-20 00:20:56
【问题描述】:

我收到以下错误:

“错误 1 ​​错误 LNK2019:未解析的外部符号 _imp_zmq_init 在函数“public: __thiscall zmq::context_t::context_t(int)”中引用 (??0context_t@zmq@@QAE@ H@Z) ZeroMQPlay.obj ZeroMQPlay"

使用此 C++ 代码:

include "stdafx.h"
include <zmq.hpp>

int _tmain(int argc, _TCHAR* argv[])
{
 zmq::context_t ctx(1);

 return 0;
}

救命!

【问题讨论】:

  • 能否请您格式化您的问题,以便代码在代码块中。
  • 感谢 Dirk 和 Aatch,我不知道如何评论。这个地方的新手:)

标签: c++ zeromq


【解决方案1】:

您必须告诉链接器有关 ZeroMQ 库的信息。如果您将 ZeroMQ 构建为 VS 项目,最简单的方法是将 ZeroMQ 项目添加到包含您自己的项目的解决方案中,并将您的项目标记为依赖它。

【讨论】:

  • 谢谢,这似乎比我的解决方案更好。
【解决方案2】:

您应该先构建 zeromq 库,然后将其与您的应用程序链接。

【讨论】:

  • 我已经构建了 ZeroMQ,除了 include 指令,还需要做什么来链接它?我在文档中注意到“-lzmq [库]”。 #rustyc++
  • PS 我在“C:\zeromq\lib\libzmq.lib”中明确包含了一个额外的依赖项,这解决了我的问题。谢谢大家。
  • 我猜你可以在源代码中添加类似#pragma comment(lib,"fullpath\zmq.lib") 的东西,但通常你应该在项目选项中指定它。
猜你喜欢
  • 1970-01-01
  • 2016-12-07
  • 2011-10-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-04-12
相关资源
最近更新 更多