windows平台上编译生成libzmq

时间:2021-09-24 22:59:38

编译libzmq工程即可。但是编译过程中出现了两个错误。

错误一:提示“error C1083: 无法打开包括文件:“sodium/core.h”: No such file or directory”

错误二:提示“error C3861: “if_nametoindex”: 找不到标识符”

错误一的解决方法:原因是缺少libsodium库,因此从https://download.libsodium.org/libsodium/releases/下载针对VS的最新版(libsodium-1.0.8-msvc.zip)。

并将的libsodium-1.0.8-msvc.zip解压到zeromq4.1.4所在文件夹下,并将解压后的文件夹重命名为libsodium,然后使用VS2010编译libsodium,编译完成后再次编译libzmq,这个错误不再出现。

错误二的解决方法:在libzmq工程上右键-属性,弹出的属性页中,在配置属性-连接器-输入中的“附加依赖项”中增加Iphlpapi.lib,如下图所示:

windows平台上编译生成libzmqwindows平台上编译生成libzmq

然后在出错的“tcp_address.cpp”文件上方增加“#include <netioapi.h>”,如下图所示:

windows平台上编译生成libzmq

然后再次编译生成libzmq即可。