Redhat Linux - 未找到 SO 文件
Posted
技术标签:
【中文标题】Redhat Linux - 未找到 SO 文件【英文标题】:Redhat Linux - SO file not found 【发布时间】:2018-06-12 05:04:27 【问题描述】:在 Linux 上运行我编译的 C++ 代码时遇到问题。当我使用这条线时,它在 Ubuntu 上运行良好:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:../irrklang/lib/linux-gcc-64/
在运行我的程序之前。如果我不这样做,我会收到一个错误:
./main: error while loading shared libraries: libIrrKlang.so: cannot open shared object file: No such file or directory
在我使用的 Redhat 版本上,它是一台 Uni PC,它必须在这里运行。运行上面的导出命令会导致:
Bad : modifier in $ (.).
我也试过了:
ldconfig -l ../irrklang/lib/linux-gcc-64/libIrrKlang.so
但这也不起作用。我不确定还有什么方法可以让我的程序正常运行。
编辑:
我刚刚试过这个:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:"../irrklang/lib/linux-gcc-64/"
但这表示 LD_LIBRARY_PATH 未定义
【问题讨论】:
您应该能够使导出命令工作。可能是您使用的是 bourne shell。尝试使用 bash。 默认的 shell 是 tcsh。与 bash 一起使用时,导出命令确实有效。而且我还需要在 bash 中运行程序。我发现我可以在 tsch 中设置 LD_LIBRARY_PATH:setenv LD_LIBRARY_PATH "../irrklang/lib/linux-gcc-64/" 谢谢你的帮助 【参考方案1】:user2672165 为我指明了正确的方向。 shell 是 tcsh,它要求我设置 LD_LIBRARY_PATH:
setenv LD_LIBRARY_PATH "../irrklang/lib/linux-gcc-64/"
另一种解决方法是使用 bash 作为导出命令和 ./run
【讨论】:
以上是关于Redhat Linux - 未找到 SO 文件的主要内容,如果未能解决你的问题,请参考以下文章
64位redhat-linux安装snmp的RPM包是总提示缺少libc.so.6()(64bit)