问题
今天在安装测试websockets服务端时,运行时提示
……error while loading shared libraries: xxx.so.0:cannot open shared object file: No such file or directory……
Oh, MY GOD!!!
找不到库文件,不可能,不是刚刚才编译好的啊?!
排查解决
首先,使用locate
查看具体的文件是否存在。
$ locate libwebsockets.so
/usr/local/lib/libwebsockets.so
/usr/local/lib/libwebsockets.so.1
/usr/local/lib/libwebsockets.so.1.0.0
$
根据实际情况,换成想要查看的文件名即可。
然后,在/etc/ld.so.conf.d/
目录下新建一文件,名字自行决定,这里枫竹梦采用websockets
。添加库文件所在的目录到文件中:
/usr/local/lib
最后,执行ldconfig
命令,更新一下动态库的运行时绑定:
$ ldconfig
至此,问题已经解决,回头试一下原来出问题的文件吧!
更多请参考Linux编程。