修改如下三個文件,添加宏定義:git
在如下3個文件開頭添加「#define _WIN32_WINNT 0x0500」github
libevent-2.0.21-stable\event_iocp.c網絡
libevent-2.0.21-stable\evthread_win32.c多線程
libevent-2.0.21-stable\listener.c函數
先輸入cd/d D:\aa_zhj\a_work\projects\libevent\libevent-2.0.22-stable切換目錄,而後輸入nmake /f Makefile.nmake進行編譯。工具
編譯成功後再libevent-2.0.22-stable目錄下生成三個lib文件:線程
libevent.lib、libevent_core.lib、libevent_extras.lib調試
5.VS2015下使用libblog
新建一個VC++控制檯項目:ci
環境配置:
項目下建一個Lib目錄,將上面三個lib文件copy到該目錄下。
新建一個Include目錄,將libevent-2.0.21-stable\include文件夾下的全部內容和WIN32-Code文件夾下的全部內容拷貝到新建的include目錄下,兩個event2目錄下的文件可合併在一塊兒。
6.項目屬性設置
VC++目錄:
包含目錄,添加上面的Include目錄;
庫目錄,添加上面的Lib目錄;
C/C++:
代碼生成-->運行庫:多線程調試 (/MTd)(Debug下),多線程 (/MT)(Release下)
鏈接器:
輸入:ws2_32.lib;wsock32.lib;libevent.lib;libevent_core.lib;libevent_extras.lib;
ws2_32.lib;wsock32.lib;是用來編譯Windows網絡相關的程序庫。
高級-->編譯爲:編譯爲C++代碼(/TP),(由於個人工程用到C++的函數因此配置這個)
網上有人推薦配置成TC的也能夠,本身根據項目須要
配置忽略項,能夠不配置
輸入\忽略特定默認庫 libc.lib;msvcrt.lib;libcd.lib;libcmtd.lib;msvcrtd.lib;%(IgnoreSpecificDefaultLibraries)
7. 生成lib後,不帶調試信息,沒法單步進函數裏,因此要修改腳本:Makefile.nmake第二行
CFLAGS=$(CFLAGS) /Od /W3 /wd4996 /nologo /Zi
到此爲止項目配置好了,咱們來寫相關的demo代碼
編譯,生成!