在Windows上安装Perl(WWW :: Curl :: Easy)的Curl

时间:2015-04-15 07:08:55

标签: windows perl curl

我在Windows上运行Strawberry Perl,需要使用WWW :: Curl :: Easy。 但是"抱歉,Windows"。

上没有自动安装

CPAN上有一个README.Win32:

Installation on Windows need to be done manually, by editing Makefile.PL.

1. Specify your curl include directory on the line "my @include = qw()".
2. Specify the following parameters on the line below, where <DIR> is your curl directory like this:

my ($cflags,$ldflags,$lflags) = ('-I"<DIR>\\include"', '-L"<DIR>\\lib"','-lcurl -lcurldll');

<DIR> can be for example: "E:\\Perldev\\downloader\\curl-7.18.2-devel-mingw32" (without quotes);
3. Save Makefile.PL.
4. Execute "perl Makefile.PL";
5. Execute "nmake" ( you may need nmake from Mircosoft, which can be downloaded from http://support.microsoft.com/default.aspx?scid=kb;en-us;Q132084 );
6. Execute "nmake install".

不幸的是,我不明白我该怎么做。我想用dmake代替nmake应该是可能的,对吧?什么是不同的&#34;包含目录&#34;?

到目前为止采取的步骤:

  • 安装草莓perl
  • 使用ssl下载并解压缩libcurl(curl-7.40.0-devel-mingw32.zip)
  • 从CPAN下载并提取WWW :: Curl
  • 编辑Makefile.pl

    - #my @includes = qw();
    +我的@includes = qw(C:\ Strawberry \ curl-7.40.0-devel-mingw32 \ include);

    - #my($ cflags,$ lflags,$ ldflags)=(&#39;&#39;,&#39;&#39;&#39;&#39;&#39;);
    +我($ cflags,$ ldflags,$ lflags)=(&#39; -I&#34; C:\ Strawberry \ curl-7.40.0-devel-mingw32 \ include&#34;&#39;,&#39 ; -L&#34; C:\ Strawberry \ curl-7.40.0-devel-mingw32 \ lib&#34;&#39;,&#39; -lcurl -lcurldll&#39;);
    ...
    - #replace open(H_IN,&#34; - |&#34;,&#34; gcc $ curl_h&#34;);
    + open(H_IN,&#34; | gcc $ curl_h&#34;);

  • 编辑curl.xs(继续进行)

有人可以举例说明安装步骤吗?

非常感谢任何帮助!谢谢。

1 个答案:

答案 0 :(得分:0)

回答你的问题:

dmake是GNU make的一个端口,并不是微软nmake的替代品,我会按照指示使用nmake。

根据不同的包含目录,我假设您引用了包含$cflags的{​​{1}}变量以及-I<DIR>\\include数组,其中您还包含相同的路径 - 按照{{ 1}}文件。

阅读@include,我可以看到README.Win32实际上是由Makefile.PL变量填充的,因此我认为没有理由同时修改@include$cflags,但同时在两个地方指定路径都没有坏处。

最终搜索@include数组,如果找到包含curl头文件$cflags的目录,则用于构建perl模块。

给出的说明是应该需要的所有内容,请指出您当前的错误,说明中没有提及编辑@include您在此文件上做了哪些工作?

顺便说一句,我不知道您的要求是什么,但我发现的/curl/curl.h模块更易于跨平台安装,并提供curl.xs的大多数(如果不是全部)功能和更多。

如果您仍然遇到问题,请提供您在问题中收到的错误的详细信息。

Gook Luck。