Perl CPAN模块的依赖问题

发布于 2024-09-14 14:49:18 字数 1416 浏览 10 评论 0原文

我尝试通过 CPAN 在 Ubuntu 8.04 Server 上安装 SOAP::WSDL 但收到以下错误消息:

cpan> install SOAP::WSDL
Running install for module SOAP::WSDL
Running make for M/MK/MKUTTER/SOAP-WSDL-2.00.10.tar.gz
Checksum for /root/.cpan/sources/authors/id/M/MK/MKUTTER/SOAP-WSDL-2.00.10.tar.gz ok
SOAP-WSDL-2.00.10/
SOAP-WSDL-2.00.10/benchmark/
(skipped many lines)
SOAP-WSDL-2.00.10/README

  CPAN.pm: Going to build M/MK/MKUTTER/SOAP-WSDL-2.00.10.tar.gz

# running Build.PL --installdirs site
Creating new 'MYMETA.yml' with configuration results
Creating new 'Build' script for 'SOAP-WSDL' version '2.00.10'
Prereq '0.0.5' for 'Class::Std::Fast' is not supported by Module::Build::Compat
Running make test
  Make had some problems, maybe interrupted? Won't test
Running make install
  Make had some problems, maybe interrupted? Won't install

我有最新版本的 Class::Std::FastModule::Build::Compat

$ perl -MModule::Build::Compat -e 'print $Module::Build::Compat::VERSION;'
0.3607
$ perl -MClass::Std::Fast -e 'print $Class::Std::Fast::VERSION;'
0.0.8

知道如何解决这个问题吗?也许我需要将 Class::Std::Fast 降级到版本 0.0.5?

I tried to install SOAP::WSDL on Ubuntu 8.04 Server through CPAN but got the following error message:

cpan> install SOAP::WSDL
Running install for module SOAP::WSDL
Running make for M/MK/MKUTTER/SOAP-WSDL-2.00.10.tar.gz
Checksum for /root/.cpan/sources/authors/id/M/MK/MKUTTER/SOAP-WSDL-2.00.10.tar.gz ok
SOAP-WSDL-2.00.10/
SOAP-WSDL-2.00.10/benchmark/
(skipped many lines)
SOAP-WSDL-2.00.10/README

  CPAN.pm: Going to build M/MK/MKUTTER/SOAP-WSDL-2.00.10.tar.gz

# running Build.PL --installdirs site
Creating new 'MYMETA.yml' with configuration results
Creating new 'Build' script for 'SOAP-WSDL' version '2.00.10'
Prereq '0.0.5' for 'Class::Std::Fast' is not supported by Module::Build::Compat
Running make test
  Make had some problems, maybe interrupted? Won't test
Running make install
  Make had some problems, maybe interrupted? Won't install

I have the latest versions of Class::Std::Fast and Module::Build::Compat:

$ perl -MModule::Build::Compat -e 'print $Module::Build::Compat::VERSION;'
0.3607
$ perl -MClass::Std::Fast -e 'print $Class::Std::Fast::VERSION;'
0.0.8

Any idea how to solve the problem? Perhaps I need to downgrade Class::Std::Fast to version 0.0.5?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

自找没趣 2024-09-21 14:49:18

长话短说,看起来您的 CPAN 安装更喜欢使用兼容性 Makefile.PL 而不是 Build.PL。它应该更喜欢 Build.PL。 Makefile.PL 仅用于兼容性,可能不具有 Module::Build 的所有功能,例如支持三部分版本。

启动cpano conf 会让您看到您的配置。如果 prefer_installer 未设置为 MB,则执行 o conf Preferred_installer MB。您可能必须o conf commit 来保存它(它会告诉您)。您可能还需要从 libmodule-build-perl 包或 CPAN 安装 Module::Build。

已向 SOAP::WSDL 报告错误

PS 您可以通过首先安装 Class::Std::Fast 来解决此问题,手动下载 SOAP::WSDL,编辑 Build.PL 以删除该依赖项,然后在 SOAP::WSDL 中运行 cpan .安装它及其依赖项的目录。

Long story short, it looks like your CPAN installation is preferring to use the compatibility Makefile.PL instead of the Build.PL. It should prefer the Build.PL. The Makefile.PLs were intended for compatibility only and may not have all the features of Module::Build, such as supporting three part versions.

Fire up cpan. o conf will let you see your configuration. If prefer_installer isn't set to MB then do o conf prefer_installer MB. You may have to o conf commit to save it (it will tell you). You may also have to install Module::Build, either from the libmodule-build-perl package or from CPAN.

Bug reported to SOAP::WSDL.

PS You can work around this by installing Class::Std::Fast first, download SOAP::WSDL manually, edit the Build.PL to remove that dependency, and run cpan . in SOAP::WSDL's directory to install it and its deps.

拥有 2024-09-21 14:49:18

您的 CPAN 版本是什么?还有配置? (cpan shell 提示符处的o conf。)

嗯,一切看起来都不错。除非由于某种原因 CPAN 无法加载 Module::Build?
您可以从新的 CPAN shell 再次尝试安装,而不使用以前的命令吗?

或者尝试在不使用 CPAN.pm 的情况下进行手动安装?

What is your CPAN version? And configuration? (o conf at the cpan shell prompt.)

Hmm, that all looks ok. Unless for some reason CPAN wasn't able to load Module::Build?
Can you try the install again from a fresh CPAN shell, with no previous commands?

Or try doing a manual install without using CPAN.pm?

吃不饱 2024-09-21 14:49:18

试试吧,

cpan Module::Build

cpan Module::Build::Compat

忘了说些什么,如果你试图用 root 用户安装模块,Ubuntu 会修改软件包,忘了吧。使用 local::lib 重试。

完成后,执行:

cpan install CPAN

最后,

cpan upgrade

它应该可以解决您的问题。

Try it,

cpan Module::Build

and

cpan Module::Build::Compat

And I forget to say something, the Ubuntu modify the packages if you are trying to install modules with root user, forget. Try again with local::lib.

After you do it, do:

cpan install CPAN

and finally,

cpan upgrade

It should solve your problem.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文