windows下编译libevent源码

本文详细介绍了在Windows环境下编译开源库libevent的方法,包括命令行编译步骤、依赖项安装和Visual Studio集成,适合Windows开发者学习和实践.

Linux下编译libevent源码》讲述了linux下编译libevent源码的方法,本文讲述其在windows平台的编译。

一、下载libevent源码

https://libevent.org/ 下载libevent源码并解压。

二.安装依赖项

下载安装OpenSSL。https://slproweb.com/products/Win32OpenSSL.html

libevent在windows下编译有两种方式,一种是使用命令行编译,一种是通过visual studio编译。下面分别演示这两种方式。

三.使用命令行编译libevent源码

以管理员身份运行Visual Studio的x86本机工具命令提示符。

进入libevent源码目录,执行:

nmake /f Makefile.nmake

编译过程中可能会遇到的报错如下:

1、“uint32_max”未声明的标识符

解决方法:源码目录下的“minheap-internal.h”里面加一句“#include<stdint.h>”

2、无法解析的外部符号 if_nametoindex

 解决方法:

test/Makefile.nmake 中加入Iphlpapi.lib

编译成功后,可以看到源码目录下生成了libevent.lib、libevent_extras.lib、libevent_core.lib

四.使用visual studio编译libevent源码

推荐用这种方式编译,因为之后可以用visual studio阅读libevent源码。以管理员身份运行cmake-gui。设置源码目录和生成的工程所在目录。 点击"Configure"按钮。

由于我安装的是vs2019,并且安装的是Win32 OpenSSL,所以设置如下:

 

然后可能有如下报错:

提示找不到OpenSSL。所以我们还得设置环境变量 

设置完后,重新以管理员身份运行cmake-gui,再次"Configure" -> "Generate",发现生成vs工程成功了。 

 

PS:如果cmake-gui设置错了,比如设置错了win32/x64这种参数,则可以通过删除CMakeCache.txt,再重新打开cmake-gui来重新设置。

 

打开libevent.sln,“解决方案libevent" -> 生成解决方案 

可以发现编译成功。

在lib/Debug目录下生成库文件。

在include目录下生成了头文件。

 

参考:《Libevent 学习一:Libevent 源码编译

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值