error while loading shared libraries: libGLU.so.1: cannot open shared object file: No such file or directory
原因
这是由于系统内部没有包含该软件运行的必要文件,例如里面提到的libXXX文件。
解决方法很简单,只要找到对应的库文件安装即可。
CentOS:在线安装相应的库文件,使用yum命令在线安装
首先,查看哪个包里包含所缺少的文件(百度一下也可以)
yum provides libstdc++.so.5
安装对应库文件
yum install compat-libstdc++-33
方法2:将其他版本的库文件链接为所需版本
有时候,系统内可能存在更高版本的库文件,比如,不存在libstdc++.so.5文件,但是存在libstdc++.so.6的文件,那么就可以尝试使用ln命令,链接一个低版本的文件。但是,这个方法稳定性不能保证,因为高版本与低版本的库兼容性如何存疑。
首先,先找一下有没有类似的库,去掉后面的版本号,命令如下
locate libstdc++.so
假如,我们找到一个libstdc++.so.6的文件,那么我们在libstdc++.so.6的文件目录下,链接一个新的libstdc++.so.5文件即可。使用命令
ln libstdc++.so.6 libstdc++.so.5
实例
错误:error while loading shared libraries: libstdc++.so.5: cannot open shared object file: No such file or directory.
解决: yum install compat-libstdc++-33
错误:error while loading shared libraries: libGLU: cannot open shared object file: No such file or directory.
解决:yum install libGLU
错误:error while loading shared libraries: libXaW.so.7: cannot open shared object file: No such file or directory.
解决:yum install libXaW
错误:error while loading shared libraries: lsb: cannot open shared object file: No such file or directory.
解决:yum install redhat-lsb