evpp是奇虎360的基于libevent的网络通讯库,源代码不错:
https://github.com/Qihoo360/evpp/blob/master/readme_cn.md
它提供vs的编译结构,我用的是mingw64+cmake,使用gnu12,把修改过程分享给大家。
步骤1. 修改CMakeLists.txt, 的UNIX改为WIN32,因为用的是MinGW。
步骤2.修改evpp文件夹中的内容
1.platform_config.h L7 add #define H_OS_WINDOWS
2.sys_sockets.h L18 comment typedef int ssize_t
3.windows_port.h L21 comment #define usleep(us) Sleep((us)/1000)
4.gettimeofday.h L10 add #include
L15 #ifdef WIN32 to #ifdef WIN32_NO_MINGW
步骤3.cmake add -lws2_32
步骤4.修改3rdparty/libhashkit文件夹中内容
common.h L16 #ifdef WIN32 to #ifdef WIN32_NO_MINGW
步骤5.修改apps/evmc/test中assert,release中assert可能不作用。
最后mingw32-make完成,结果如下:
后面测试了memcached客户端evmc_test,结果如下:
用telnet测试一下:
进去后
再看evmc_test,结果如下
注意test的变化。
多谢。亲爱的美美。