libevent 编译 Windows

在 http://libevent.org/ 上下载了libevent-2.0.22-stable.tar.gz 参照网上的说法,

  1) 在以下3个文件开头添加“#define _WIN32_WINNT 0x0500”

    libevent-2.0.21-stableevent_iocp.c

    libevent-2.0.21-stableevthread_win32.c

    libevent-2.0.21-stablelistener.c

  2)使用VS命令提示工具编译:

  cd/d ?libeventlibevent-2.0.21-stable  

  nmake /f Makefile.nmake

  但是一直遇到错误,找不到WinSock2.h……等等文件

最终找到解决办法,见 http://bbs.csdn.net/topics/340045118

设置nmake,cl等的环境变量
不使用vs的IDE进行编译,直接使用nmake,cl等工具,在命令行下需要做许多工作:
1. 为了在命令行下直接使用nmake,需要将nmake的目录加到环境变量PATH;
...Microsoft Visual Studio 8VCin
...Microsoft Visual Studio 8Common7IDE  ----这下面有些dll是cl要用的

2. cl.exe使用CL,INCLUDE,LIBPATH这几个环境变量。添加INCLUDE到用户变量,里面存放需要用到的常用头文件位置,添加LIBPATH到用户变量,存放常用的库位置,如果需要的话:
...Microsoft Visual Studio 8VCinclude   ----下面有标准c库头文件,如stdio.h
...Microsoft Visual Studio 8VCPlatformSDKInclude ----  有windows.h等头文件

3. link.exe使用LIB变量:
...Microsoft Visual Studio 8VClib
...Microsoft Visual Studio 8VCPlatformSDKLib
转载自http://mystixie.ycool.com/post.2020914.html

  我只在环境变量里设置了INCLUDE 及 LIB 变量,就可以编译通过了,至于加入的目录,你看那个文件找不到就在文件里搜索这个文件看在哪个目录里就OK, 特此小记一下

原文地址:https://www.cnblogs.com/yaling/p/5086450.html