1

我正在尝试运行amqpcpp(代码片段)中的示例之一:

int onCancel(AMQPMessage * message ) { 
   AMQPQueue * q = message->getQueue();
   q->Cancel( message->getConsumerTag());
   return 0;
}

我有以下错误:

未定义符号:_ZN11AMQPMessage8getQueueEv

我已经包含了amqpcpp. 据此,此标头中的其他对象被识别并正常工作。

4

2 回答 2

1

该错误实际上是链接器错误,意味着您没有链接到 AMQP 库。将库添加到项目设置中的库列表(如果您使用的是 IDE)或添加-lamqpcpp到命令行(-L<path to amqpcpp library>如果您已将其安装在非标准目录中,则可以选择需要)。

于 2013-09-17T14:36:16.427 回答
0

聚会有点晚了,但我遇到了同样的问题。我使用 CMake 文件将 AMQP-CPP 链接到我的程序,但 CMake 抱怨它不存在。显然图书馆的顺序很重要。由于一个依赖于另一个,因此无法编译。我将 AMQP-CPP 作为最后一个库移动解决了这个问题。

于 2019-12-07T01:56:59.253 回答