如何在Windows上的ActivePerl中安装模块及其依赖项?

k5ifujac  于 2022-11-15  发布在  Perl
关注(0)|答案(6)|浏览(331)

我想用gmail的smtp服务器和perl发送邮件。我正在尝试安装Email::Send::Gmail,但我不清楚安装步骤是什么。似乎它依赖于我没有安装的其他模块。

yqkkidmi

yqkkidmi1#

这在一定程度上取决于您使用的Perl发行版。
ActivePerl包括一个名为PPM的实用程序(Perl Package Manager)来安装模块。它会自动处理依赖项解析。PPM特别适合在Windows上安装XS模块,因为Windows上通常没有编译器。PPM的缺点是有些CPAN模块不可用(可能是因为它们无法通过ActiveState的自动构建过程)。您可以从“开始”菜单或在命令提示符下键入ppm来运行PPM。
一个更通用的选择是使用交互式CPAN shell。注意,你必须有一个编译器才能用这种方法安装XS模块。你可以在命令提示符下输入cpan来访问cpan shell。
最后的办法是从CPAN下载tarball并手动安装它们。当安装由于不满足依赖关系而中止时,下载并安装它们,然后返回到第一个模块并重试。

6jygbczu

6jygbczu2#

型号:

cpan Email::Send::Gmail

...在命令提示符下。
最好先设置local::lib
或见Perl Foundation Wiki on installing CPAN modules或相同但without root access
或者参见the CPAN guide to installing modules

rta7y2nd

rta7y2nd3#

如果你使用的是ActivePerl,先试试ActivePerl自带的PPM (Perl Package Manager)工具,当你告诉它安装一个模块时,它会为你处理所有的依赖项。
请注意Email::Send::Gmail的dependency tree。其中一些模块需要额外安装第三方软件,最值得注意的是OpenSSL,而cpan无法为您完成。

dphi5xsq

dphi5xsq4#

您可以使用以下命令安装它:

perl -MCPAN -e shell
install Email-Send-Gmail

希望能有所帮助,
/克劳斯

b4lqfgs4

b4lqfgs45#

如果可以的话,CPAN。(哈!它押韵.... a.真是罪过。哎呀,又来了!这什么时候结束......:p)它基本上是为你的系统安装模块的 * 方式a。它自动检测依赖项,下载,安装,并为你测试它们,如果构建或测试失败,它会退出。这是一种奇妙而可靠的安装模块的方式。如果你使用的是除ActiveState发行版之外的任何Perl发行版,包括Strawberry Perl,它都能很好地工作。通常,这是用

cpan Module::Name

或者在交互模式中,

$ cpan
cpan > install Module::Name

如果你正在使用ActiveState Perl,那么你可能想使用ActiveState的PPM(Perl包管理器)。它类似于CPAN,除了所有东西都是为ActiveState Perl预先构建的。ActiveState在他们的网站上有一个how to use their Perl Package Manager文档,包括一个图形示例。
如果简单的方法失败了,你也不是不走运。还有一些更复杂的,但手动的方法,你可以做仍然安装模块。
您可以下载的大多数模块都在.yaml文件中包含一些元数据;这将帮助你弄清楚你是否拥有了所有的依赖项。2 CPAN和PPM会自动解析和安装你所有的依赖项,但是手工操作就不行了,这就留给你自己去做了。
假设您拥有所有依赖项,并且需要手动安装,请查找以下两个文件之一:Makefile.PL或Build. PL。如果您有Makefile.PL,则在命令提示符内将cd添加到您解压缩模块的目录,并键入:

perl Makefile.PL
make
make test
make install

你需要在你的系统上安装一个“make”程序。如果它是ActiveState Perl,你可能需要手动安装这个模块(见下面的一两段)。
如果它碰巧有一个Build.PL,那么你需要做一组稍微不同的步骤:

perl Build.PL
Build
Build test
Build install

(Of当然,如果make/Build测试失败,您可能会考虑不安装,但这取决于您自己。)
作为最后一种选择,如果模块没有xs文件(即需要在安装时编译的代码),并且满足所有依赖项,您只需将lib文件夹中的文件移动到perl安装的site\lib文件夹中。自定义库目录(例如/my/project/lib),然后在运行工具之前,确保环境已设置。
作为后续操作,请参阅PerlFaq 8-如何从CPAN安装模块。
另请参见PerlFaq 8-如何保留自己的模块/库目录?。

smdnsysy

smdnsysy6#

混合安装方法是要求心痛和头痛,你不需要。
不要将CPAN与Active Perl一起使用。请使用PPM。*
PPM下载源位于Randy Kobes' site
如果找不到所需模块的PPM,可以使用Mr. Kobes make_ppm轻松构建自己的PPM。
您可以下载一个发行版,然后简单地运行make_ppm来构建PPM,但是我更喜欢使用更“正常”的构建过程:

perl Makefile.PL
make
make test
make_ppm
  • 如果你在c:/perl/site/* 之外安装文件,那么使用CPAN是可以的,只是不要把CPAN shell模块和PPM模块混合在一起。

相关问题