请教:安装FastDFS是有关libevent库找不到的问题
说明:
我安装的libevent是 libevent1.4.14b-stable 版本;
FastDFS是 FastDFS_v2.02 版本;
上述两个软件包安装都没有问题,在启动 tracker的时候提示如下错误:
while loading shared libevent-1.4.so.2 can`t open shared object file: NO such file or directory
查看 tracker 的makefile 指定了 LIB_PATH=-L /usr/local/bin -levent
在我的 /usr/local/bin 目录下也确实存在 libevent-1.4.so.2 这个文件,不知道什么原因,请知道的朋友提示下,谢谢!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(9)
[root@localhost FastDFS]# ./make.sh
cc -Wall -O -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -DDEBUG_FLAG -DOS_LINUX -c -o ../common/hash.o ../common/hash.c -I../common /test/apps/include
cc: /test/apps/include:未使用链接器输入文件,因为链接尚未完成
cc -Wall -O -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -DDEBUG_FLAG -DOS_LINUX -c -o ../common/chain.o ../common/chain.c -I../common /test/apps/include
cc: /test/apps/include:未使用链接器输入文件,因为链接尚未完成
cc -Wall -O -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -DDEBUG_FLAG -DOS_LINUX -c -o ../common/base64.o ../common/base64.c -I../common /test/apps/include
cc: /test/apps/include:未使用链接器输入文件,因为链接尚未完成
cc -Wall -O -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -DDEBUG_FLAG -DOS_LINUX -c -o ../common/shared_func.o ../common/shared_func.c -I../common /test/apps/include
cc: /test/apps/include:未使用链接器输入文件,因为链接尚未完成
cc -Wall -O -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -DDEBUG_FLAG -DOS_LINUX -c -o ../common/ini_file_reader.o ../common/ini_file_reader.c -I../common /test/apps/include
cc: /test/apps/include:未使用链接器输入文件,因为链接尚未完成
cc -Wall -O -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -DDEBUG_FLAG -DOS_LINUX -c -o ../common/logger.o ../common/logger.c -I../common /test/apps/include
cc: /test/apps/include:未使用链接器输入文件,因为链接尚未完成
cc -Wall -O -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -DDEBUG_FLAG -DOS_LINUX -c -o ../common/sockopt.o ../common/sockopt.c -I../common /test/apps/include
cc: /test/apps/include:未使用链接器输入文件,因为链接尚未完成
cc -Wall -O -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -DDEBUG_FLAG -DOS_LINUX -c -o ../common/fdfs_global.o ../common/fdfs_global.c -I../common /test/apps/include
cc: /test/apps/include:未使用链接器输入文件,因为链接尚未完成
cc -Wall -O -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -DDEBUG_FLAG -DOS_LINUX -c -o ../common/sched_thread.o ../common/sched_thread.c -I../common /test/apps/include
cc: /test/apps/include:未使用链接器输入文件,因为链接尚未完成
cc -Wall -O -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -DDEBUG_FLAG -DOS_LINUX -c -o ../common/http_func.o ../common/http_func.c -I../common /test/apps/include
cc: /test/apps/include:未使用链接器输入文件,因为链接尚未完成
cc -Wall -O -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -DDEBUG_FLAG -DOS_LINUX -c -o ../common/pthread_func.o ../common/pthread_func.c -I../common /test/apps/include
cc: /test/apps/include:未使用链接器输入文件,因为链接尚未完成
cc -Wall -O -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -DDEBUG_FLAG -DOS_LINUX -c -o ../common/md5.o ../common/md5.c -I../common /test/apps/include
cc: /test/apps/include:未使用链接器输入文件,因为链接尚未完成
cc -Wall -O -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -DDEBUG_FLAG -DOS_LINUX -c -o tracker_proto.o tracker_proto.c -I../common /test/apps/include
在包含自 tracker_proto.c:23 的文件中:
tracker_types.h:19:19: 错误:event.h:没有那个文件或目录
make: *** [tracker_proto.o] 错误 1
tracker/Makefile.in
INC_PATH = -I../common -I/usr/local/include
LIB_PATH = -L/usr/local/lib $(LIBS) -levent
storage/Makefile.in
INC_PATH = -I../common -I/usr/local/include
LIB_PATH = -L/usr/local/lib $(LIBS) -levent
要手动改这些文件吧。我看都是在文件固定的。不是参数传进去的啊。是吗?谢谢。
回复 1# plyat
提示一下,FastDFS版本太低了,不太稳定,请下载最新的V2.09版本。
libevent的安装,最好直接安装到 /usr下。
按照你的装法,需要修改make.sh,指定libevent相关的 -L和-I参数。
多谢指导,不过还是有问题。还请费心多指导一下。谢谢。
libevent安装路径如下
./configure -prefix=/test/app/
[root@localhost FastDFS]# export LD_LIBRARY_PATH=/test/app
[root@localhost FastDFS]# ./make.sh
cc -Wall -O -D_FILE_OFFSET_BITS=64 -g -DDEBUG_FLAG -DOS_LINUX -c -o ../common/hash.o ../common/hash.c -I../common -I/usr/local/include
cc -Wall -O -D_FILE_OFFSET_BITS=64 -g -DDEBUG_FLAG -DOS_LINUX -c -o ../common/chain.o ../common/chain.c -I../common -I/usr/local/include
cc -Wall -O -D_FILE_OFFSET_BITS=64 -g -DDEBUG_FLAG -DOS_LINUX -c -o ../common/base64.o ../common/base64.c -I../common -I/usr/local/include
cc -Wall -O -D_FILE_OFFSET_BITS=64 -g -DDEBUG_FLAG -DOS_LINUX -c -o ../common/shared_func.o ../common/shared_func.c -I../common -I/usr/local/include
cc -Wall -O -D_FILE_OFFSET_BITS=64 -g -DDEBUG_FLAG -DOS_LINUX -c -o ../common/ini_file_reader.o ../common/ini_file_reader.c -I../common -I/usr/local/include
cc -Wall -O -D_FILE_OFFSET_BITS=64 -g -DDEBUG_FLAG -DOS_LINUX -c -o ../common/logger.o ../common/logger.c -I../common -I/usr/local/include
cc -Wall -O -D_FILE_OFFSET_BITS=64 -g -DDEBUG_FLAG -DOS_LINUX -c -o ../common/sockopt.o ../common/sockopt.c -I../common -I/usr/local/include
cc -Wall -O -D_FILE_OFFSET_BITS=64 -g -DDEBUG_FLAG -DOS_LINUX -c -o ../common/fdfs_global.o ../common/fdfs_global.c -I../common -I/usr/local/include
cc -Wall -O -D_FILE_OFFSET_BITS=64 -g -DDEBUG_FLAG -DOS_LINUX -c -o ../common/sched_thread.o ../common/sched_thread.c -I../common -I/usr/local/include
cc -Wall -O -D_FILE_OFFSET_BITS=64 -g -DDEBUG_FLAG -DOS_LINUX -c -o ../common/http_func.o ../common/http_func.c -I../common -I/usr/local/include
cc -Wall -O -D_FILE_OFFSET_BITS=64 -g -DDEBUG_FLAG -DOS_LINUX -c -o ../common/pthread_func.o ../common/pthread_func.c -I../common -I/usr/local/include
cc -Wall -O -D_FILE_OFFSET_BITS=64 -g -DDEBUG_FLAG -DOS_LINUX -c -o ../common/md5.o ../common/md5.c -I../common -I/usr/local/include
cc -Wall -O -D_FILE_OFFSET_BITS=64 -g -DDEBUG_FLAG -DOS_LINUX -c -o tracker_proto.o tracker_proto.c -I../common -I/usr/local/include
在包含自 tracker_proto.c:23 的文件中:
cc -Wall -O -D_FILE_OFFSET_BITS=64 -g -DDEBUG_FLAG -DOS_LINUX -c -o tracker_proto.o tracker_proto.c -I../common -I/usr/local/include
在包含自 tracker_proto.c:23 的文件中:
tracker_types.h:19:19: 错误:event.h:没有那个文件或目录
make: *** [tracker_proto.o] 错误 1
cc -Wall -O -D_FILE_OFFSET_BITS=64 -g -DDEBUG_FLAG -DOS_LINUX -c -o ../tracker/tracker_proto.o ../tracker/tracker_proto.c -I../common -I../tracker -I../client -Ifdht_client -I/usr/local/include
在包含自 ../tracker/tracker_proto.c:23 的文件中:
../tracker/tracker_types.h:19:19: 错误:event.h:没有那个文件或目录
make: *** [../tracker/tracker_proto.o] 错误 1
cc -Wall -O -D_FILE_OFFSET_BITS=64 -g -DDEBUG_FLAG -DOS_LINUX -c -o ../tracker/tracker_proto.o ../tracker/tracker_proto.c -I../common -I../tracker -I/usr/local/include
在包含自 ../tracker/tracker_proto.c:23 的文件中:
../tracker/tracker_types.h:19:19: 错误:event.h:没有那个文件或目录
make: *** [../tracker/tracker_proto.o] 错误 1
[root@localhost FastDFS]# export LD_LIBRARY_PATH=/test/app/bin
[root@localhost FastDFS]# ./make.sh
cc -Wall -O -D_FILE_OFFSET_BITS=64 -g -DDEBUG_FLAG -DOS_LINUX -c -o tracker_proto.o tracker_proto.c -I../common -I/usr/local/include
在包含自 tracker_proto.c:23 的文件中:
tracker_types.h:19:19: 错误:event.h:没有那个文件或目录
make: *** [tracker_proto.o] 错误 1
cc -Wall -O -D_FILE_OFFSET_BITS=64 -g -DDEBUG_FLAG -DOS_LINUX -c -o ../tracker/tracker_proto.o ../tracker/tracker_proto.c -I../common -I../tracker -I../client -Ifdht_client -I/usr/local/include
在包含自 ../tracker/tracker_proto.c:23 的文件中:
../tracker/tracker_types.h:19:19: 错误:event.h:没有那个文件或目录
make: *** [../tracker/tracker_proto.o] 错误 1
cc -Wall -O -D_FILE_OFFSET_BITS=64 -g -DDEBUG_FLAG -DOS_LINUX -c -o ../tracker/tracker_proto.o ../tracker/tracker_proto.c -I../common -I../tracker -I/usr/local/include
在包含自 ../tracker/tracker_proto.c:23 的文件中:
../tracker/tracker_types.h:19:19: 错误:event.h:没有那个文件或目录
make: *** [../tracker/tracker_proto.o] 错误 1
回复 4# xiaochu
可以使用 export LD_LIBRARY_PATH=/xxx/xxx/lib
如果把libevent安装到 /xxx/xxx/lib下,就用不了fastdfs了吗?
谢谢
回复 2# plyat
比较标准的做法应该把libevent安装到 /usr/lib下,使用
./configure --prefix=/usr
问题已经被群里的朋友解决了:
echo 查看环境变量 LD_LIBRARY_PATH 是空的;于是:
export LD_LIBRARY_PATH = /usr/local/bin 就可以解决上述问题;