最新消息:

静态编译libevent

技术文章 NickYang 13061浏览 10评论

libevent简介

libevent是一个事件触发的网络库,适用于windows、linux、bsd等多种平台,内部使用select、epoll、kqueue等系统调用管理事件机制。著名分布式缓存软件memcached也是libevent based,而且libevent在使用上可以做到跨平台,而且根据libevent官方网站上公布的数据统计,似乎也有着非凡的性能。

linux下编译

这个就非常简单了,

./configure
make
make install

三部曲搞定

 

windows下编译就没这么简单了

最新的stable版本是2.0.21,对源码不需要任何修改即可,老的版本可以需要在event_iocp.c  evthread_win32.c  listener.c中加入

#define _WIN32_WINNT 0x0500

确保代码中用到某些windows的函数可以知道系统版本。

打开您visual studio tool中的开发人员工具,进入您libevent代码目录,(这里cd命令有个坑的,不同分区跳转有问题,需要 cd /d dir,强制跳转),然后输入

nmake /f Makefile.nmake

使用vs自带的nmake来编译,之后会生成libevent.lib libevent_core.lib libevent_extras.lib,这样您所需要的libevent的静态文件库就生成了,下来就将include和lib引入到您的工程中就可以使用了。

转载请注明:C++爱好者博客 » 静态编译libevent

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

网友最新评论 (10)

  1. 很有收获
    站长工具4年前 (2015-02-25)回复
  2. 为你冷风吹
    站长工具4年前 (2015-02-19)回复
  3. 看了2遍源码,收货很多
    子然君5年前 (2014-05-19)回复
  4. 现在有个需求,windows下使用http proxy 抓取某个网页,libevent靠谱么?求相关资料...各种拜谢 --
    Yu5年前 (2014-03-12)回复
    • asio: https://github.com/avplayer/avhttp libevent: https://github.com/caosiyang/websocket libuv: https://github.com/dndx/shadowsocks-libuv 这三个项目都可以看下
      eliteYang5年前 (2014-03-13)回复
  5. 不懂c++,飘过
    微历史5年前 (2014-02-10)回复
  6. cd到不同的盘,比如c到d,我一直是 > d: > cd xxx
    Yu5年前 (2014-02-06)回复
    • 我的磁盘分区貌似出了点问题,他认为是不在同一块硬盘上,以前我的两个分区莫名其妙的消失过
      eliteYang5年前 (2014-02-06)回复