【问题标题】:Error in Perl code: Can't locate loadable object for module XML::LibXSLT [duplicate]Perl 代码中的错误:找不到模块 XML::LibXSLT 的可加载对象 [重复]
【发布时间】:2013-12-15 12:58:08
【问题描述】:
Environment: CentOS 5.
Application: Perl 5.8.8

Apache 错误提示

Error in Perl code: Can't locate loadable object for module XML::LibXSLT

它需要以下模块:

XML::LibXSLT

和

XML::LibXML

两者都需要 v 1.70,我都安装了。

我的问题是,它说“找不到模块的可加载对象”

它到底在寻找什么模块?就所需的 perl 模块而言,它们都已安装并在那里。

是否有任何调试方法,比如它到底在寻找什么?

【问题讨论】:

  • 这些模块加载 C 代码,而 Perl 找不到该模块的 .so 文件。你是如何安装模块的?使用cpan 或cpanm 命令行工具,使用yum 或ppm 之类的包管理器,还是通过perl Makefile.PL && make && make test && make install 手动操作?安装和测试是否完成且没有错误?您是否安装了第 3 方 libxml 和 libxslt 库?您的安装很糟糕,只完成了一半。
  • 我已经通过perl Makefile.PL && make && make test && make install 安装了它,这些都可以正常工作。我现在有一个小小的疑问,就像我已经从源代码安装了 libxml2 然后当它不起作用时,我再次通过 YUM 通过 rpm 包安装它。但这不应该影响我猜。

标签: perl apache centos5


【解决方案1】:

“可加载对象”是 Perl 模块完成其工作所需的 C 库。要修复它,您可能需要运行以下命令。

$ sudo yum install libxml2
$ sudo yum install libxslt

我很惊讶这些库不见了。你是如何安装模块的?如果您使用yum,那么它们将作为依赖项安装,如果您使用cpan(或cpanm),那么如果没有安装这些库,Perl 将无法构建模块。

更新:我刚刚在另一个回复中看到您正在手动安装此模块。你有什么理由不使用yum 来安装它们吗?

$ sudo yum install perl-XML-LibXML
$ sudo yum install perl-XML-LibXSLT

【讨论】:

  • 我已经安装了这些核心 C 模块,但这里还有其他问题。我为此模块使用 Libxml2-2.6.32 和 libxslt-1.1.18。并且两个 perl 模块都是 1.70 版。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-10-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-12-21
相关资源
最近更新 更多