我正在尝试在Windows 7上安装CPAN模块。我没有Active Perl,因此无法使用PPM包。
所有网站上提供的步骤包括以下三个步骤:make,make test和make install。我知道make是unix命令,不能在Windows上运行。
我将在Windows上运行什么命令来完成安装?
我从其中一个网站提到的CPAN网站上下载了dmake,但是当我运行它时,它会出现以下错误 -
d:\解析-RecDescent的-1.965001.tar \解析-RecDescent的-1.965001> d:\的dmake \的dmake \的dmake dmake:错误: - `d:\ indigoampp \ perl的-5.12.1 \ libConfig.pm” 没找到,也无法制作
请告诉我如何完成这些步骤。谢谢!
PS:同样,PPM不是一种选择。
谢谢大家。
在indigoampp \ perl-5.12.1 \ lib位置有一个名为Config_heavy.pl的文件。它有一行:make ='nmake'。当我使用dmake命令时,我将其更改为make ='dmake'。
在此之后,我不需要在每个模块的Makefile中更改DIRFILESEP。它正在生成\\,如上面的链接中所述。
所以我现在可以运行dmake,dmake test和dmake install。但它没有做任何事情。它没有在各自的位置复制pm文件/文件。为什么呢?
无论如何,我手动复制pm文件/文件,希望一切都能正常工作。不过我以前也可以这样做。为什么我运行makefile.pl和dmake命令??
另外,我的目标是安装Apache2 :: Request模块。我发现它依赖于多个模块。我下载了这些模块并为它们运行了上面的命令 - 没有错误。最后,当我为Apache2 :: Request模块运行这些步骤时,我在dmake命令中遇到以下错误:
D:\libapreq2-2.12.tar\libapreq2-2.12>dmake
dmake: makefile: line 25: Warning: -- Duplicate target [Release]
dmake: makefile: line 25: Warning: -- Duplicate target [Release]
dmake: makefile: line 25: Warning: -- Duplicate target [!=]
dmake: makefile: line 25: Error: -- Expecting macro or rule defn, found neith
er
我在libapreq2-2.12.tar \ libapreq2-2.12文件夹下的Makefile中找不到任何可疑内容。 Makefile的部分内容(在错误行周围)是:
LIBAPREQ=libapreq2
APREQ2_TEST=apreq2_test
CGITEST=test_cgi
MOD=mod_apreq2
!IF "$(CFG)" != "Release" && "$(CFG)" != "Debug"
!MESSAGE Invalid configuration "$(CFG)" specified.
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE CFG="Release"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "Release" (based on "Win32 (x86) Console Application")
!MESSAGE "Debug" (based on "Win32 (x86) Console Application")
!MESSAGE
!ERROR An invalid configuration is specified.
!ENDIF
!IF "$(APACHE)" == ""
!MESSAGE No Apache directory was specified.
!MESSAGE Please run Configure.bat to specify a valid Apache directory.
!ERROR
!ENDIF
任何人都可以帮助这个&上面的问题(为什么它没有自动复制pm文件)?谢谢你的时间!
答案 0 :(得分:7)
看起来你正在使用Indigo Perl。根据他们的网站,他们有自己的包管理器叫做IPM - 你试过吗?
但是对于Windows Perl的工作,我真的建议您查看Strawberry Perl。
答案 1 :(得分:1)
有时要安装Perl模块,您只需将.pm文件复制到perl / site或perl / lib中的相应目录即可。安装Perl模块的标准过程总是涉及运行'make',但在很多情况下,所有'make'都是将.pm文件复制到perl / site或perl / lib。但是当Perl模块需要对Windows库进行低级访问时,您需要的不仅仅是“make”,而是需要一个完整的C工具链。
如果ActiveState Perl违反您的宗教信仰,请考虑下载并安装Cygwin环境。为Cygwin安装选择Perl和C开发工具(称为binutils)。
但我告诉你,它很难击败ActiveState Perl。它是Windows平台上最完整的Perl解决方案。它是免费的!