0

我正在(拼命地)尝试将最新版本的 WWW::Curl 构建/安装到我的 activeperl 盒子上(稍后我会解释为什么我不使用 PPM)

我必须按照此处的说明进行一些修改:http: //cpansearch.perl.org/src/SZBALINT/WWW-Curl-4.15/README.Win32

我还必须更改以下行:

从:

open(H_IN, "-|" "gcc", "$curl_h") and $has_cpp++;

到:

open(H_IN, "gcc $curl_h") and $has_cpp++;

我终于让 perl Makefile.PL 工作了,但是现在,当我运行 nmake 时,我得到以下信息:

Missing right curly or square bracket at -e line 1, at end of line
Execution of -e aborted due to compilation errors.
NMAKE:  fatal error U1077:  'C;|windows\system32\cmd.exe' : return code '0xff'
Stop.

现在,我尝试编译它而不是使用 u.winnipeg 提供的 PPM 的原因是因为 PPM 似乎不支持 SSL 事务(我得到“libcurl:ssl disabled”)现在,如果有人可以显示我如何让 ssl 在这个 PPM 上运行,我很乐意使用它。

非常感谢您提前

4

3 回答 3

1

我猜原版是

open(H_IN, "-|", "gcc", "$curl_h")

您必须更改它的原因是因为没有人能够在 Windows 中实现功能。将其更改为

open(H_IN, qq{gcc "$curl_h" |})

为您的编译器使用正确的名称和语法。

于 2011-03-23T17:29:07.123 回答
1

好吧,我终于弄明白了,感谢所有回复的人。有很多事情我必须改变。

使用http://cpansearch.perl.org/src/SZBALINT/WWW-Curl-4.15/README.Win32作为指南:

像我上面所做的那样打开的 cmd 工作正常。但是,我确实使用了 ikegami、reinierpost 和 mob 返回的建议。

使用 nmake /n(如 socket puppet 所建议的那样),它打印出所有正在执行的 perl 语句。我把这个输出放到一个 .bat 文件中,并更正了 perl 语法。

我改变了所有的实例

pm_to_blib({{@ARGV}

pm_to_blib({@ARGV}

(令人不安的是这些被退回)

然后,我必须将 libcurl 库链接到实例化 g++ 的每一行,这些行没有正确链接。在我添加了这些参考资料后,其他一切都很顺利。

这些被添加:

C:\lc\curl\lib\libcurl.a C:\lc\curl\lib\libcurldll.a

现在,WWW::Curl 愉快地在我的系统上运行。

至于使用PPM版本,正是因为SSL我不得不升级。WWW::Curl 的最新版本是 4.15,ppm 版本是(我相信)3.02。

于 2011-03-24T20:58:09.387 回答
0

首先,很多人不知道可以使用 ppm 安装 MinGW 来使用 cpan 安装模块

其次,如果您的模块提供的 libcurl 不做 SSL,您可以尝试从下载页面替换为合适的 SSL 版本。这很可能会失败,但你也可能很幸运。

于 2011-03-23T21:31:00.537 回答