libevent的使用问题【已解决】

本帖最后由 jiufei19 于 2011-03-10 13:52 编辑

最近开始学习下libevent的使用,在安装好该库文件后,通过如下命令编译好随该库所带的测试文件:

gcc hello-world.c -o hw -levent

执行hw时,系统报告:error while loading shared libraries: libevent-2.0.so.5: cannot open shared object file: No such file or directory

但是明明/usr/local/lib目录下有此文件,编译不是已经通过了吗?没有办法我只好把该文件拷贝到/usr/lib下才能正常运行,请问大家该如何解决此问题?谢谢

作者: jiufei19   发布时间: 2011-03-10

回复 jiufei19


    惭愧,刚才搜索了下关于linux下动态链接库的使用方法,知道原因是编译和运行时都需要明确指定动态链接库的位置,开始以为编译时已经指定了,运行时就不需要再次指定了,导致此问题的产生。解决方法:

vi /etc/ld.so.conf.d/libevent.conf

然后在此新建的libevent.conf文件中明确写出libevent-5.0.so的路径:/usr/local/lib

#ldconfig,刷新/etc/lb.so.cache,这样就可以正确使用libevent了

作者: jiufei19   发布时间: 2011-03-10