报错如下:
解决
排除了所有头文件,lib库,字符集,预处理器等问题,原因出在这里:
在引用zmq静态库lib时,首先要预处理器添加宏:
ZMQ_STATIC
ZMQ_USE_TWEETNACL
连接器->输入->附加依赖项里还要添加以下三个库:
wsock32.lib
ws2_32.lib
Iphlpapi.lib
为保险起见,(我就是链接器配置好了仍然不管用),在zmq发布订阅端类的定义文件.cpp里再加入以下一段代码:
#pragma comment(lib, "libzmq.lib") //”“里是你lib文件夹下zmq静态库名称
为什么说在发布订阅这个模式的类里面加呢,因为在其他如请求/应答模式下没有这个问题,不清楚为什么发布订阅就识别不到配置项里的zmq的lib库。非得戳它脸上指定才行。
错误总是出的莫名其妙。
仅记录一下。
更新:3.22使用zmq出现同样问题,配置链接库识别不到,需在代码里添加:
#pragma comment(lib, "libzmq.lib")
另外附上常规解决方法的大神链接:
1.lib库无法解析的外部符号的几种情况
2.vs配置zmq静态库和动态库
不怕慢,就怕站。