Windows LibZMQ3和草莓perl

Windows LibZMQ3和草莓perl,windows,perl,zeromq,cpan,strawberry-perl,Windows,Perl,Zeromq,Cpan,Strawberry Perl,我正在尝试在草莓perl上安装ZMQ::LibZMQ3,但在安装此模块时收到以下错误消息。我的ZMQ libs和include位于C:\Program Files\ZeroMQ 3.2.2下: cpan> install ZMQ::LibZMQ3 Running install for module 'ZMQ::LibZMQ3' Running make for D/DM/DMAKI/ZMQ-LibZMQ3-1.09.tar.gz Checksum for C:\strawberry\c

我正在尝试在草莓perl上安装ZMQ::LibZMQ3,但在安装此模块时收到以下错误消息。我的ZMQ libs和include位于C:\Program Files\ZeroMQ 3.2.2下:

cpan> install ZMQ::LibZMQ3

Running install for module 'ZMQ::LibZMQ3'
Running make for D/DM/DMAKI/ZMQ-LibZMQ3-1.09.tar.gz
Checksum for C:\strawberry\cpan\sources\authors\id\D\DM\DMAKI\ZMQ-LibZMQ3-1.09.tar.gz ok
Scanning cache C:\strawberry\cpan\build for sizes
............................................................................DONE

  CPAN.pm: Building D/DM/DMAKI/ZMQ-LibZMQ3-1.09.tar.gz

Cannot determine perl version info from lib/ZMQ/LibZMQ3.pm
Probing environment variables:
Probing libzmq via pkg-config ...
'pkg-config' is not recognized as an internal or external command,
operable program or batch file.
 - No libzmq found...
Probing zeromq3 via pkg-config ...
'pkg-config' is not recognized as an internal or external command,
operable program or batch file.
 - No zeromq3 found...
Detected the following ZMQ settings:
 + ZMQ_HOME = "C:\Program Files\ZeroMQ 3.2.2"
 + ZMQ_H = "C:\Program Files\ZeroMQ 3.2.2\include\zmq.h"
 + ZMQ_INCLUDES = "C:\Program Files\ZeroMQ 3.2.2\include"
 + ZMQ_LIBS = "C:\Program Files\ZeroMQ 3.2.2\lib"
 + ZMQ_TRACE = (null)
Can't link/include C library 'zmq.h', 'zmq', aborting.
Warning: No success on command[C:\strawberry\perl\bin\perl.exe Makefile.PL]
  DMAKI/ZMQ-LibZMQ3-1.09.tar.gz
  C:\strawberry\perl\bin\perl.exe Makefile.PL -- NOT OK
Running make test
  Make had some problems, won't test
Running make install
  Make had some problems, won't install
Stopping: 'install' failed for 'ZMQ::LibZMQ3'.
Failed during this command:
 DMAKI/ZMQ-LibZMQ3-1.09.tar.gz                : writemakefile NO 'C:\strawberry\perl\bin\perl.exe Ma
kefile.PL' returned status 512

是否可以在windows上安装此cpan模块?如果可以,是否有人可以帮助解决此问题?

此软件包不会安装在基于ActiveState Perl windows的计算机上-尽管某些ZMQ软件包会安装。Windows/Perl下的支持似乎充其量是有限的

见本页: 因为草莓Perl似乎存在已知的问题

我讨厌添加这一点(不喜欢Python),但它似乎在Windows和Python2.7下工作。只是做了一个快速安装并运行了包含的测试,测试通过了。文档还说Java在Windows下也能很好地工作

如果不是64位,这可能会有所帮助(来自laufeyjarson):


我只是在ActiveStatePerl环境中尝试了一下

首先我得到了相同的结果,但后来我重命名了我的ZMQ安装 并删除了空间

(从
C:\App\ZeroMQ2.2.0
C:\App\ZeroMQ2\u 2\u 0

所以我通过了这个问题

Can't link/include C library 'zmq.h', 'zmq', aborting.
并在Makefile.PL中获得下一步

Detecting zmq version...
(这在我的系统上失败,因为我有一个0mq 2.2.0,perl绑定需要3.3)


希望这对您也有用。

您使用的是草莓Perl还是ActiveState Perl?活动状态Perl在从CPAN安装时可能会遇到问题,除非您已经安装了
nmake
并安装了MinGW实用程序。我担心的是:

Probing libzmq via pkg-config ...
'pkg-config' is not recognized as an internal or external command,
operable program or batch file.
这对我来说是一个巨大的危险信号。我在尝试安装时也注意到了这首小曲:

Detected the following ZMQ settings:
 + ZMQ_HOME = (null)
 + ZMQ_H = (null)
 + ZMQ_INCLUDES = (null)
 + ZMQ_LIBS = (null)
 + ZMQ_TRACE = (null)
嗯。。我必须先设置这些环境变量

接下来,我发现无法链接/包含C库“zmq”,正在中止。它来自Makefile中的
assert
。我在上发现了这个问题。它说:

啊,漂亮的指针。pthread_创建问题。我的perl是用线程支持编译的。我已经重新编译了perl,这个问题已经解决了

嗯,是的,草莓Perl是用线程支持编译的。而且,我不会重新编译它

我的建议如下:

  • 在名称中不带空格的目录中安装ZMQ。我直接在
    C:\ZeroMQ-3.2.2
    下安装了它
  • 定义这些环境变量。我查看了Makefile.PL,它需要
    ZMQ\u LIBS
    ZMQ\u INCLUDES
  • 确保您只使用了草莓Perl,而不是ActiveState。您可以使用ActiveState,但这需要一些调整
  • 在Makefile.PL中添加调试标志
    Debug=>1
    (这意味着您必须在从命令行运行
    perl Makefile.PL
    的地方手动安装Makefile

在没有线程支持的情况下,我不会下载并重新编译Perl,看看这是否有效。不过,我希望我已经让你走上了正确的道路。

Ha,你所有的代表都在悬赏。;)不确定是否相关,但它似乎不仅仅在你的系统上失败:嗯,可能我也应该添加一些明显的事实。;-)
Probing libzmq via pkg-config ...
'pkg-config' is not recognized as an internal or external command,
operable program or batch file.
Detected the following ZMQ settings:
 + ZMQ_HOME = (null)
 + ZMQ_H = (null)
 + ZMQ_INCLUDES = (null)
 + ZMQ_LIBS = (null)
 + ZMQ_TRACE = (null)