因要使用tsung对openfire做压力测试,tsung依赖erlang,导致首次安装tsung即失败。已安装的centos5并不包含erlang开发包,下载到 otp_src_R12B-5.tar.gz 解压后进入到解压后目录,按照说明步骤:
./configure
结果前面看着刷一堆的日志,一切OK,但到最后出现两行错误:
checking for tgetent in -lncurses... no
checking for tgetent in -lcurses... no
checking for tgetent in -ltermcap... no
checking for tgetent in -ltermlib... no
configure: error: No curses library functions found
configure: error: /bin/sh '/opt/of/software_temp/otp_src_R12B-5/erts/configure' failed for erts
折腾了半天发现是缺少erlang的依赖ncurses,因为是centos,先查看缺失哪个。命令一看,有些还是有的,但也缺少一部分。
yum list|grep ncurses
根据缺失的组件情况,再安装ncuses缺少组件
yum -y install ncurses-devel
安装成功后,再到erlang解压目录下./configure 一切正常,再执行:make也正常,但到make install 又出错:
make[6]: Entering directory `/opt/evas/software_temp/otp_src_R12B-5/lib/common_test/c_src'
../priv/build_rx_lib ../priv make
make[6]: execvp: ../priv/build_rx_lib: Permission denied
make[6]: *** [rx] Error 127
make[6]: Leaving directory `/opt/of/software_temp/otp_src_R12B-5/lib/common_test/c_src'
make[5]: *** [release_spec] Error 2
make[5]: Leaving directory `/opt/of/software_temp/otp_src_R12B-5/lib/common_test/c_src'
make[4]: *** [release] Error 2
make[4]: Leaving directory `/opt/of/software_temp/otp_src_R12B-5/lib/common_test/c_src'
make[3]: *** [release] Error 2
make[3]: Leaving directory `/opt/of/software_temp/otp_src_R12B-5/lib/common_test/c_src'
make[2]: *** [release] Error 2
make[2]: Leaving directory `/opt/of/software_temp/otp_src_R12B-5/lib/common_test'
make[1]: *** [release] Error 2
make[1]: Leaving directory `/opt/of/software_temp/otp_src_R12B-5/lib'
make: *** [install.libs] Error 2
这个问题就比较好找了,根据上面的路径找到lib/common_test/priv 目录,来个暴力的,在该目录下:chmod 777 build_rx_lib ,再执行make install 一切正常了。接下来就是继续安装tsung, ./configure,make,make install 一切正常,终于把这玩意给安装好了。在ubuntu上安装tsung省事多了。