ABSender安装流程及问题解决

以下文章转自:http://blog.sina.com.cn/s/blog_9aa583cf0101819w.html  感谢ABSender的用户反馈。谢谢

 

ABSender 目前来看是比较符合我的要求的性能测试工具,有几个要求:
1、支持读取url文件,这个就去掉了原版AB,webbench这样的工具
2、支持大并发访问,这种要求原版AB,siege都不能满足,这两个工具在超过2000的并发数时都有问题

安装ABSender的过程比较艰苦,其实也是因为个人能力不足引起的
不然直接看makefile就解决了
基本步骤见 http://100continue.iteye.com/blog/1720376
安装完APR库和APR-util库之后,make ABSender,出现错误提示:ap_release.h:25:41: error: apr_general.h: No such file or directory
这个ap_release.h 的25行是  #include
我检查了一下,apr_general.h 这个文件就是那个提前安装的包中的文件已经在系统中存在了
网上查找资料,别人提示说 .h 文件是在makefile 中的 -I之后的路径中.
more Makefile ,看见gcc代码为

ABSender: ABSender.c ap_release.h
    gcc ABSender.c ap_release.h -o ABSender
 -I/usr/local/apr/include/ -L/usr/local/apr/lib -lapr-1 `pkg-config apr-1 --cflags` -laprutil-1 -lm

/usr/local/apr/include/  这个路径实际不正确,我安装之后的路径应该是
/usr/local/apr/include/apr-1  和  /usr/local/apr-util/include/apr-1
修改之后,变成 -I/usr/local/apr/include/apr-1 -I/usr/local/apr-util/include/apr-1 -L/usr/local/apr/lib -lapr-1 `pkg-config apr-1 --cflags` -laprutil-1 -lm

再次 make ABSender ,再次出现错误提示,提示信息主要是说 pkg-config apr-1 --cflags 这个有问题,提示需要把apr-1 加入到
pkg-config环境变量中,可是这是什么变量呢?google一下,得到一篇解答,http://jdz1986.blog.sohu.com/131690337.html
大概明白这个东西是啥意思了,于是
export PKG_CONFIG_PATH=/usr/local/apr/lib/pkgconfig:$PKG_CONFIG_PATH  解决

第三次make ABSender ,第三次出现错误提示,/usr/bin/ld: cannot find -laprutil-1
第三次google,找到一篇说明,http://blog.sina.com.cn/s/blog_4156950c0100sfzz.html
于是首先sudo vi /etc/ld.so.conf ,加入 /usr/lib ,
然后进入 /usr/lib 检查了一下,确实不存在 libaprutil-1.so
于是sudo ln -s /usr/local/apr-util/lib/libaprutil-1.so.0.5.1 libaprutil-1.so
再回到 /etc ,ldconfig 一下,应该就ok了

第四次make ABSender,终于没错误信息了,貌似成功了。也出现了 ABSender 命令了。 ./ABSender 一下,又开始出现错误,提示如下:
error while loading shared libraries: libaprutil-1.so.0: cannot open shared object file: No such file or directory
第一时间看见错误,我还奇怪了一下,libaprutil-1.so 我刚加到lib中了的,怎么又提示不在..
再仔细一看,坑爹的,原来是 libaprutil-1.so.0 不存在。。这两个有啥差异啊?baidu一下,貌似没啥差异
那为毛线要搞两个?
算了,再来一个就是了,于是 cd /usr/lib
sudo ln -s /usr/local/apr-util/lib/libaprutil-1.so.0.5.1 libaprutil-1.so.0

第五次,./ABSender ,终于出现正确的提示了。。。
坑爹的linux啊

你可能感兴趣的:(ABSender,性能压测)