RHEL服务器运行Lampp启动时报共享库无法加载错误如何解决
问题根因分析
- 你在系统层面配置的
LD_LIBRARY_PATH不生效的核心原因是:XAMPP的lampp启动脚本会主动重置并覆盖动态链接库搜索路径,优先读取/opt/lampp/lib下的库,导致系统路径的/usr/lib64没有被纳入脚本运行时的搜索范围 - 次要排查点:确认你安装的XAMPP版本架构和系统匹配,若你在64位RHEL上安装了32位XAMPP,也会出现64位系统库无法被32位程序识别的报错
解决方案
方案1:修改lampp启动脚本的库搜索路径(推荐)
- 备份原始lampp脚本:
cp /opt/lampp/lampp /opt/lampp/lampp.bak
- 编辑lampp脚本,找到设置
LD_LIBRARY_PATH的行,一般是类似export LD_LIBRARY_PATH=/opt/lampp/lib:...的配置,在原有路径后面追加系统库路径:
export LD_LIBRARY_PATH=/opt/lampp/lib:/usr/lib:/usr/lib64:$LD_LIBRARY_PATH
- 保存退出后重新执行启动命令:
./lampp start
方案2:临时指定库路径启动(临时验证用)
直接在启动命令前手动指定动态链接库路径,无需修改脚本:
LD_LIBRARY_PATH=/usr/lib:/usr/lib64:/opt/lampp/lib ./lampp start
方案3:架构不匹配的处理
如果前两个方案都无效,执行以下命令验证XAMPP二进制的架构:
file /opt/lampp/bin/gettext
如果输出显示是32位程序(ELF 32-bit LSB executable),则安装32位glibc依赖即可:
yum install glibc.i686 libdl.i686
内容的提问来源于stack exchange,提问作者Mycotina
相关产品推荐
相关产品推荐

