准备:
1.编译好的OpenSSL
2.libevent源码,版本:libevent-2.1.5-beta
编译:
1.打开CMD窗口,切换到libevent源码目录,执行:Common7\Tools\vsvars32.bat (x64执行:VC\bin\amd64\vcvars64.bat),准备一下编译环境。
2.执行:nmake /f Makefile.nmake 进行编译即可。若想编译debug版本,修改编译参数:CFLAGS=$(CFLAGS) /Ox /W3 /wd4996 /nologo 为:CFLAGS=$(CFLAGS) /Od /W3 /wd4996 /nologo /Zi
3.编译x64版本需要修改Makefile.nmake,LIBFLAGS的值后面追加/MACHINE:X64
4.如果想支持SSL,编辑Makefile.nmake文件,取消OPENSSL_DIR定义的注释,将其配置为正确的OpenSSL库地址
5.执行:nmake /f Makefile.nmake 来编译,nmake /f Makefile.nmake clean来清空
问题:
1.缺少print-winsock-errors.c
2.编译错误:libevent-2.1.8
NMAKE : fatal error U1077: “"C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\BIN\cl.EXE"”: 返回代码“0x2”
Stop.
NMAKE : fatal error U1077: “"C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\BIN\nmake.exe"”: 返回代码“0x2”
Stop.
修改:regress_http.c的3611和3654行,如下:
struct http_server hs = { .port = 0, .ssl = ssl, };
修改为:
struct http_server hs = {0, ssl, };
其他参考:
Windows Visual Studio 使用Libevent库 - 灰信网(软件开发博客聚合) (freesion.com)
网友评论