1、编译Libevent;
安装VS2015编译器,进入命令行提示,这里注意32和64位的区别;
使用cd命令进入libevent源文件目录,找到Makefile.nmake文件,如果是64位需要在LIBFLAGE中设置:
LIBFLAGS=/nologo /MACHINE:X64,然后输入nmake /f Makefile.nmake命令编译,得到libevent.lib,libevent_core.lib和libevent_extras.lib三个库文件,然后将lib文件拷贝到另外一个目录下。在windows下需要将WIN32-Code目录下的文件一并拷贝到include目录下,event2目录下的文件可以合并在一起, 这里假定VS编译后的include和lib文件都放在D:\Projects\libevent\include路径下。
2、在VS下开发
在VS下配置相对简单,设置项目的include和lib目录,然后加入引用库文件advapi.lib,ws2_32.lib和wsock32.lib,以及libevent的三个库文件即可。
3、在Qt下开发
配置.pro文件,设置include和lib文件路径,参考如下配置,使用了绝对路径;
INCLUDEPATH += D:\Projects\libevent\include
LIBS += -ladvapi32 -lws2_32 -lwsock32
LIBS += -lD:\Projects\libevent\lib\libevent
LIBS += -lD:\Projects\libevent\lib\libevent_core
LIBS += -lD:\Projects\libevent\lib\libevent_extras
如果出现类似“error LNK2019:无法解析的外部符号_imp_CryptAcquireContextA@20”这样的错误提示,通常是在*.pro文件中设置LIBS ++ -ladvapi32就可以了,记住libevent需要ws2_32和wsock32网络库。