我从项目中生成了一个 deb 包。检查其内容 - 一切正常(可执行文件 - 客户端和服务器)。但是安装后无法启动
/usr/local/bin$ ./server
./server: error while loading shared libraries: libsqlite_db.so: cannot open shared object file: No such file or directory
这个库在deb包里,但是不明白为什么安装后看不到。对于它来说,应该有什么单独的逻辑?
应用程序无法访问 libsqlite_db.so 库或正在查找错误的位置(通常是 /urs/lib* )。
因此,我们使用 ldconfig 创建一个绑定:
在文件/etc/ld.so.conf.d/{ library_name }.conf或/etc/ld.so.conf中添加库的路径:
接下来,以 root (sudo) 身份执行
ldconfig -v以更新缓存。检查缓存中的库路径
ldconfig -p | grep libsqlite找出应用程序在哪里寻找库以及是否找到它
ldd ./server