c++ - Linux - 找不到 SO 文件

标签 c++ c linux environment-variables shared-libraries

我有一个程序需要安装 liblog4cpp 才能运行。

现在,我想让程序在没有 liblog4cpp 的情况下在另一台机器上运行。所以我只是找到 log4cpp.so 并将其移动到我的程序的同一目录中。但是运行报错:

error while loading shared libraries: liblog4cpp.so.4: cannot open shared object file: No such file or directory

我做的对吗?我怎样才能告诉程序找到它旁边的 SO 文件?

最佳答案

除了其他人的建议之外,考虑将文件添加到动态链接器的缓存中。你可以这样做:

ldconfig -l /path/to/lib/liblog4.so.4

要将它添加到加载程序的缓存中,请使用以下命令:ldconfig

然后为了验证它是否被正确添加,运行这个:

ldconfig -v | grep liblog

关于c++ - Linux - 找不到 SO 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18547551/

相关文章:

C++ 链接器在查找 openssl MD4 函数时遇到问题

c++ - Boost.Interprocess 内存位置

c - 如何只检查一次输入,而不是挂起等待输入

c - 信号处理程序在我的 C http 服务器上不工作

linux - 在 .sh bash 脚本文件中使用 awk

linux - 是否可以在不使用 kill 命令的情况下停止 xsp --nonstop 进程?

c++ - 有 C++ 反编译器吗?

c++ - 为什么不能在没有可变参数的情况下在 lambda 内部转发参数?

无法输入数据,输出在 C 中看起来很奇怪

linux - Ansible:在每个主机的不同时间运行 cron