evpp mingw64编译过程
Posted islinyoubiao
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了evpp mingw64编译过程相关的知识,希望对你有一定的参考价值。
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 <sys/time.h>
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的变化。
多谢。亲爱的美美。
顺便讲一句,惠州大亚湾龙光城很差,大家不要买他们的房子!!!
以上是关于evpp mingw64编译过程的主要内容,如果未能解决你的问题,请参考以下文章
MinGW-w64安装教程——著名C/C++编译器GCC的Windows版本
Windows下的 C++ 编译工具(MinGW-w64 + CMake)