DoubleLi

qq: 517712484 wx: ldbgliet

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  4737 随笔 :: 2 文章 :: 542 评论 :: 1615万 阅读
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

学习笔记,只是记录本次成功用libevent源代码进行编译。环境为MinGW+VS2008+Msys。

0.下载libevent库

  http://libevent.org/ 下载stable稳定版的库。

1.编译

  一开始我用MinGW进行编译的,但是总是出现问题。后来参考了这个博客:http://m.blog.csdn.net/blog/bojie5744/39698599 ,把vs的运行环境包含进来,然后再进行编译

call "C:\Program Files\Microsoft Visual Studio 9.0\VC\vcvarsall.bat"

  ./configure ; make ; make install;

  如果不install也可以,libevent头文件在include里面,而生成的库在.libs里面,由于使用的是vs的运行环境。所以libevent源代码编译后的库后缀为lib,而非以前的a文件。复制 libevent.lib;libevent_core.lib;libevent_extra.lib;(最后给出我编译后的文件,方便没有vs编译环境的人下载使用。) 如果为了以后方便,可以把include目录里文件复制到开发环境的include里面,而.libs里面的三个文件也可以拷贝到mingw的lib文件夹里面。

2.libevent测试代码

复制代码
复制代码
1 #include <winsock2.h>
2 #include <event2/event.h>
3 #include <event2/event_struct.h> 
4 
5 int main(int argc, char **argv)
6 {
7     event timeout;
8     return (0);
9 }
复制代码
复制代码

  编译选项为

  g++ test.cpp -Iinclude -L. -levent -lws2_32

  注意测试的编译还是不通过的。要把libevent.lib 文件名改为event.lib就可以通过了,具体为什么就还不清楚。至于为什么MS系的lib库和mingw的的a库文件有什么区别,在Windows下mingw高级版本,两者是没有区别的,都是可以调用使用的。

3.libevent自带的http服务器源码(在sample中的http-server.c)

 View Code

  g++ http-server.c -Iinclude -L. -levent -lws2_32

  这样就可以当作服务器了。

  

  libevent编译后的库下载地址: https://files.cnblogs.com/files/wunaozai/libevent.zip

  from: http://www.cnblogs.com/wunaozai/p/4550084.html 

posted on   DoubleLi  阅读(737)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
历史上的今天:
2013-08-15 一 VC2008环境中ICE的配置
2013-08-15 二 示例程序一
2013-08-15 三 ICE开发初级研究
2013-08-15 VC断点不可用的问题
2013-08-15 Ice笔记-利用Ice::Application类简化Ice应用
2012-08-15 CREATEMUTEX
2012-08-15 如何终止线程的运行(C/C++)
点击右上角即可分享
微信分享提示