在Perl应用程序中检测编译失败,丢失包等的最简单方法是什么?

use*_*145 3 perl module

我有一个别人写的Perl应用程序,我试图让它在我的本地机器上运行.但我一直在其中一个模块中出现错误,这似乎是基于某个地方丢失的模块.有什么好的工具或做法来追踪这件事情?

der*_*ert 5

如果你有一个丢失的模块,你会收到这样的错误:

无法在@INC中找到是/否/ Exist.pm(@INC包含:/ etc/perl /usr/local/lib/perl/5.10.0 /usr/local/share/perl/5.10.0/usr/lib/perl5/usr/share/perl5 /usr/lib/perl/5.10 /usr/share/perl/5.10/usr/local/lib/site_perl.).

追踪Perl模块的最佳位置是CPAN搜索.您可以使用CPAN shell安装它们,运行时可以使用:

perl -MCPAN -e shell
Run Code Online (Sandbox Code Playgroud)

您也可以从Perl供应商/ Linux发行版中获取它们.

至于找到它们,我想到了两种方法:

  1. 当您运行perl Makefile.PL时,它应该告诉您需要安装的所有模块.当然,这只有在编写应用程序的人不愿意让它工作的时候.

  2. 在文件中搜索"use"和"require"指令.