下载地址:
https://github.com/ventureresearch/libevent
已经修改好的版本:
https://download.csdn.net/download/phil_gu/11195444
重要过程:
1. Android.mk 去掉 文件: epoll_sub.c bufferevent_openssl.c (不需要SSL)
2. 由于在android上连接的原因
将 Android/event2/event-config.h
/* Define to 1 if you have the `issetugid' function. */
//#define _EVENT_HAVE_ISSETUGID 1
Android 下面没有 issetugid 函数
evutil_rand.c
在 evutil_secure_rng_add_bytes 之前 加上 #ifdef HAVE_ARC4RANDOM_ADDRANDOM
#ifdef HAVE_ARC4RANDOM_ADDRANDOM
void
evutil_secure_rng_add_bytes(const char *buf, size_t n)
{
arc4random_addrandom((unsigned char*)buf,
n>(size_t)INT_MAX ? INT_MAX : (int)n);
}
#endif
3. 运行 NDK 进行编译:
ndk-build.cmd NDK_PROJECT_PATH=. APP_BUILD_SCRIPT=Android.mk
会生成 libevent 的 Android 静态库。