fedora安装HTTPSQS所遇各种问题解决汇总
2011-04-26 16:43
316 查看
最近在研究张宴的
基于 HTTP GET/POST 协议的轻量级开源简单消息队列服务HTTPSQS,安装阶段遇到如下错误:
安装tokyocabinet时./configure会出现如下错误:
configure: error: bzlib.h is required
.
这是因为bzlib.h找不到的错误,在fedora下是bzip2-devel没有安装,用yum 安装就好了
yum install bzip-devel 解决了。
-------------------------------------------------------------------------------------------------------------------------------------
到了httpsqs的make阶段,出现不少链接错误,简单说明一下基础:
gcc 的-I 参数指示编译器不仅在标准位置,还在指定的位置中查找相关的头文件;
gcc 的-L参数指示为编译器增加库的搜索路径,可以修改配置文件/etc/ld.so.conf给编译器增加动态库的搜索路径。
出现以下错误:
但是libc.so等就在/usr/lib目录下,我也已经将该目录增加到/etc/ld.so.conf文件中,这会是什么问题呢?
什么都不如手册可靠,呵呵。看了一下gcc的手册,发现,--static选项作用是禁止使用共享库,而这几个需要的静态库我有没有安装,现在一般很少安装静态库了,解决的方法之一就是安装相应的静态库。
我没有这样做,既然已经存在共享库,为何还要安装静态库呢?于是我将--static选项删除,make,make install成功了。
接着我启动httpsqs,发现还是抱错。
./httpsqs: error while loading shared libraries: libevent-2.0.so.5: cannot open shared object file: No such file or directory
于是使用ldd命令查看一下httpsqs需要的共享库,结果如下:
ldd /usr/bin/httpsqs
结果:
linux-gate.so.1 => (0x005ac000)
libevent-2.0.so.5 => not found
libtokyocabinet.so.9 => /usr/lib/libtokyocabinet.so.9 (0x00905000)
libz.so.1 => /lib/libz.so.1 (0x008cf000)
libbz2.so.1 => /lib/libbz2.so.1 (0x03018000)
librt.so.1 => /lib/librt.so.1 (0x00898000)
libpthread.so.0 => /lib/libpthread.so.0 (0x00874000)
libm.so.6 => /lib/libm.so.6 (0x008a3000)
libc.so.6 => /lib/libc.so.6 (0x006e8000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x008e6000)
/lib/ld-linux.so.2 (0x006c7000)
于是使用whereis 查找一下 libevent-2.0.so.5,发现在
/usr/local/libevent-2.0.10-stable/lib/libevent-2.0.so.5
存在。
解决方案:做一个软连接:
ln -s /usr/local/libevent-2.0.10-stable/lib/libevent-2.0.so.5 /usr/lib/libevent-2.0.so.5
这个时候在使用ldd查看,一切正常了。
这个时候,终于,历经好几个小时的摸索,httpsqs终于起来了。
基于 HTTP GET/POST 协议的轻量级开源简单消息队列服务HTTPSQS,安装阶段遇到如下错误:
安装tokyocabinet时./configure会出现如下错误:
configure: error: bzlib.h is required
.
这是因为bzlib.h找不到的错误,在fedora下是bzip2-devel没有安装,用yum 安装就好了
yum install bzip-devel 解决了。
-------------------------------------------------------------------------------------------------------------------------------------
到了httpsqs的make阶段,出现不少链接错误,简单说明一下基础:
gcc 的-I 参数指示编译器不仅在标准位置,还在指定的位置中查找相关的头文件;
gcc 的-L参数指示为编译器增加库的搜索路径,可以修改配置文件/etc/ld.so.conf给编译器增加动态库的搜索路径。
出现以下错误:
gcc -o httpsqs httpsqs.c prename.c -L/usr/local/libevent-2.0.10-stable/lib/ -levent -L/usr/local/tokyocabinet-1.4.47/lib/ -ltokyocabinet -I/usr/local/libevent-2.0.10-stable/include/ -I/usr/local/tokyocabinet-1.4.47/include/ -lz -lbz2 -lrt -lpthread -lm -lc -O2 -g --static /usr/bin/ld: cannot find -lz /usr/bin/ld: cannot find -lbz2 /usr/bin/ld: cannot find -lrt /usr/bin/ld: cannot find -lpthread /usr/bin/ld: cannot find -lm /usr/bin/ld: cannot find -lc /usr/bin/ld: cannot find -lc collect2: ld 返回 1 make: *** [httpsqs] 错误 1
但是libc.so等就在/usr/lib目录下,我也已经将该目录增加到/etc/ld.so.conf文件中,这会是什么问题呢?
什么都不如手册可靠,呵呵。看了一下gcc的手册,发现,--static选项作用是禁止使用共享库,而这几个需要的静态库我有没有安装,现在一般很少安装静态库了,解决的方法之一就是安装相应的静态库。
我没有这样做,既然已经存在共享库,为何还要安装静态库呢?于是我将--static选项删除,make,make install成功了。
接着我启动httpsqs,发现还是抱错。
./httpsqs: error while loading shared libraries: libevent-2.0.so.5: cannot open shared object file: No such file or directory
于是使用ldd命令查看一下httpsqs需要的共享库,结果如下:
ldd /usr/bin/httpsqs
结果:
linux-gate.so.1 => (0x005ac000)
libevent-2.0.so.5 => not found
libtokyocabinet.so.9 => /usr/lib/libtokyocabinet.so.9 (0x00905000)
libz.so.1 => /lib/libz.so.1 (0x008cf000)
libbz2.so.1 => /lib/libbz2.so.1 (0x03018000)
librt.so.1 => /lib/librt.so.1 (0x00898000)
libpthread.so.0 => /lib/libpthread.so.0 (0x00874000)
libm.so.6 => /lib/libm.so.6 (0x008a3000)
libc.so.6 => /lib/libc.so.6 (0x006e8000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x008e6000)
/lib/ld-linux.so.2 (0x006c7000)
于是使用whereis 查找一下 libevent-2.0.so.5,发现在
/usr/local/libevent-2.0.10-stable/lib/libevent-2.0.so.5
存在。
解决方案:做一个软连接:
ln -s /usr/local/libevent-2.0.10-stable/lib/libevent-2.0.so.5 /usr/lib/libevent-2.0.so.5
这个时候在使用ldd查看,一切正常了。
这个时候,终于,历经好几个小时的摸索,httpsqs终于起来了。
相关文章推荐
- fedora20 安装搜狗输入法及各种问题的解决
- fedora20 安装搜狗输入法及各种问题的解决
- fedora20 安装搜狗输入法及各种问题的解决
- 安装Fedora 16后解决的各种问题
- Python安装其它库的步骤和问题解决方案汇总
- 安装配置管理 之 Fedora 6.0 蓝牙bluebooth传送文件的问题解决方法
- [转载精品] win7无法进入睡眠状态问题解决办法的各种汇总(收集)
- linux 下安装 MySQL 经常出现各种问题终极解决方法 /var/run/mysqld/mysqld.sock /var/run/mysqld/mysqld.pid
- Fedora27安装wxPython2.8.12.1时遇到的问题及解决
- Apache 源码包安装以及出现一些问题的解决 汇总
- 解决安装Intel各种驱动提示“安装程序未能安装一个或多个设备驱动程序”的问题
- Fedora12(i386) 安装chrome浏览器 问题查找与解决
- Centos 7安装oracle 11g R2问题及解决方法汇总
- Ubuntu下安装httpsqs遇到的问题与解决
- fedora 15 安装opencv2.2时出现undefined reference to `cvCreateCameraCapture_V4L(int)'问题及其解决方法
- Fedora25和win10双系统安装及使问题汇总
- ubuntu16.04安装caffe以及各种问题汇总
- 解决Fedora安装后不能直接root登陆的问题
- Fedora 15 降级安装GCC-4.5.3 全过程以及遇到的问题和解决办法总结