我对在Cygwin中为Perl安装WWW :: Curl感到困惑

时间:2011-07-26 18:32:04

标签: perl curl cygwin

我已经使用Cygwin的包管理器安装了Perl和libcurl。现在,我正在尝试安装WWW::Curl。我必须在WWW::Curl的Makefile.PL中指定cURL include目录,但我不知道在哪里查找它。谢谢你的时间。

2 个答案:

答案 0 :(得分:0)

它会尝试自动猜测。如果不起作用,请参阅README

P.S。 LWP使用起来更方便。

答案 1 :(得分:0)

编辑:在使用系统perl时,通常首选使用您的软件包经理自己的软件包,cygwin有perl-WWW-Curl软件包,安装此软件包而不是构建您自己的软件包。

我很可能认为你错过了libcurl-devel包。虽然您提到已安装libcurl,但请确保通过cygwin软件包管理应用程序安装libcurl-devel,并在需要时再试一次。 WWW:Curl会搜索正确的包含路径,查找curl/curl.h,如果找不到该文件,那么它可能会查找错误的地方,您必须手动安装:

  1. 从cpan
  2. 下载并解压缩包
  3. 阅读包含的README文件以了解此过程
  4. 在您的cygwin安装中搜索名为curl/curl.h的文件,记下它所在的目录。
  5. 修改Makefile.PL,以便@includes包含上述目录。
  6. 运行perl Makefile.PL
  7. 运行make && make install
  8. 此过程与本机Win32 / Strawberry perl安装的过程基本相同,因为它不知道libcurl的位置。您可以查看README.Win32文件以获取类似说明。

    libcurl-devel软件包将curl/curl.h文件安装到usr/include/,这是Makefile.PL已搜索过的路径。

    但是,如果您说您不知道在哪里查找,请找到curl.h您可以执行以下操作:

    find / -name curl.h
    

    但要注意这可能需要很长时间,您可以尝试/usr

    等具体位置
    find /usr -name curl.h
    

    甚至可以更好地查看包内容以查找文件位置:

    https://cygwin.com/cgi-bin2/package-cat.cgi?file=x86%2Flibcurl-devel%2Flibcurl-devel-7.41.0-1&grep=libcurl

    为了回应Alexandr的回答,LWP使用跨平台更方便,同时覆盖相同的功能,它还可以做更多。