如何使用Strawberry在Windows上编译Perl模块?

这更多的是一个公开的讨论和结论,而不是一个真正的问题,希望能在某个时候帮助别人。

我正在研究如何在互联网断开的服务器上创buildPerl模块(否则答案很简单:使用cpan ),所以我唯一的select是手动编译从互联网(CPAN或其他)下载的模块服务器。

问题是,在标准的Windows服务器上,没有编译器。 那么如何制作这些模块?

如果你看看你的草莓Perl安装文件夹,你会看到许多有用的工具,包括编译器cpp.exec++.exegcc.exe和make实用程序gmake.exedmake.exe

dmakegcc一起支持在您的安装上使用cpan ,并且cpanm也可以使用。

有关安装模块的一般过程的信息,请查看perlmodinstall

草莓Perl在默认安装中包含了必要的编译环境,所以编译模块没有问题。

至于在脱机环境中安装模块,我非常偏爱使用cpanmini 。 基本上,您可以使用具有互联网访问权的机器创建所有CPAN的最小镜像,然后将其放到离线机器上。 将cpan程序的设置更改为指向此本地镜像。 现在你可以用cpan来安装几乎所有的模块。

这可能看起来像是矫枉过正,但它确实非常简单。 CPAN镜子只占用大约2GB的空间,这些日子已经不算什么了。 你可以把它放在USB棒,DVD,或其他任何东西。 这是一个一劳永逸的解决方案 – 下一次你想安装一个模块,它已经在那里。

草莓背后的人聪明的包装与Perl的二进制文件之间的所有你需要在<Strawberry install dir>\c\bin目录下。

然后,要直接在Windows服务器上脱机编译Perl模块,过程非常简单:

  1. 下载模块.tar.gz文件
  2. 解压缩它
  3. 在模块目录中打开一个cmd
  4. 输入perl Makefile.PL
  5. 键入dmake ,看看是否没有错误
  6. 键入dmake test ,看看是否没有错误
  7. 输入dmake install ,看看是否没有错误

你应该没问题!

不要犹豫,要完成这篇文章或提出您的问题,以改善它。