linux 查看libevent 安装目录,libevent linux安装

wget http://monkey.org/~provos/libevent-1.4.13-stable.tar.gz

wget http://downloads.sourceforge.net/levent/libevent-2.0.22-stable.tar.gz

tar –xzvf libevent-1.4.13-stable.tar.gz

tar -xzvf libevent-2.0.22-stable.tar.gz

cd libevent-1.4.13-stable

./configure --prefix=/home/mydir/libevent

不指定prefix,则可执行文件默认放在/usr /local/bin,

库文件默认放在/usr/local/lib,

配置文件默认放在/usr/local/etc。

其它的资源文件放在/usr /local/share。

你要卸载这个程序,要么在原来的make目录下用一次make uninstall(前提是make文件指定过uninstall),要么去上述目录里面把相关的文件一个个手工删掉。

指定prefix,直接删掉一个文件夹就够了。

make && make install

src:main.cpp

/*

* XXX This sample code was once meant to show how to use the basic Libevent

* interfaces, but it never worked on non-Unix platforms, and some of the

* interfaces have changed since it was first written. It should probably

* be removed or replaced with something better.

*

* Compile with:

* cc -I/usr/local/include -o time-test time-test.c -L/usr/local/lib -levent

*/

#include

#include

#include

#ifndef WIN32

#include

#include

#endif

#include

#ifdef _EVENT_HAVE_SYS_TIME_H

#include

#endif

#include

#include

#include

#include

#include

#include

#include

#include

#ifdef WIN32

#include

#endif

struct timeval lasttime;

int event_is_persistent;

static void

timeout_cb(evutil_socket_t fd, short event, void *arg)

{

struct timeval newtime, difference;

struct event *timeout = (struct event *)arg;

double elapsed;

evutil_gettimeofday(&newtime, NULL);

evutil_timersub(&newtime, &lasttime, &difference);

elapsed = difference.tv_sec +

(difference.tv_usec / 1.0e6);

printf("timeout_cb called at %d: %.3f seconds elapsed.

",

(int)newtime.tv_sec, elapsed);

lasttime = newtime;

if (! event_is_persistent) {

struct timeval tv;

evutil_timerclear(&tv);

tv.tv_sec = 2;

event_add(timeout, &tv);

}

}

int

main(int argc, char **argv)

{

struct event timeout;

struct timeval tv;

struct event_base *base;

int flags;

#ifdef WIN32

WORD wVersionRequested;

WSADATA wsaData;

wVersionRequested = MAKEWORD(2, 2);

(void)WSAStartup(wVersionRequested, &wsaData);

#endif

if (argc == 2 && !strcmp(argv[1], "-p")) {

event_is_persistent = 1;

flags = EV_PERSIST;

} else {

event_is_persistent = 0;

flags = 0;

}

/* Initalize the event library */

base = event_base_new();

/* Initalize one event */

event_assign(&timeout, base, -1, flags, timeout_cb, (void*) &timeout);

evutil_timerclear(&tv);

tv.tv_sec = 2;

event_add(&timeout, &tv);

evutil_gettimeofday(&lasttime, NULL);

event_base_dispatch(base);

return (0);

}

g++ main.cpp -L./libevent/lib -levent -I./libevent/include/

export LD_LIBRARY_PATH=/home/shengkaishan/work/libevent/lib/:$LD_LIBRARY_PATH

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值