【问题标题】:cannot install or use ZeroMQ library无法安装或使用 ZeroMQ 库
【发布时间】:2013-05-26 14:18:45
【问题描述】:

我正在研究 Debian Linux / Apache(Dreamhost 的 VPS)。我已尝试按照these instructions 安装 ZeroMQ(版本 3.2.3)。乍一看,一切顺利。

sudo make install 命令自豪地报告(除其他外)

Libraries have been installed in: /usr/local/lib

确实,这里是/usr/local/libls

libzmq.a libzmq.so libzmq.so.3.0.0 php python2.5 site_ruby libzmq.la libzmq.so.3 ocaml pkgconfig python2.6

为了使用 ZeroMQ,我已将其添加到我的 php.ini 中:

extension = /usr/local/lib/libzmq.so

但是当我运行 PHP 时,我得到:

PHP Startup: Invalid library (maybe not a PHP library) '/usr/local/lib/libzmq.so

我做错了什么?

更新 根据 djf 的回答,我通过instructions for PHP bindings(从 Github 构建)进行了工作。这些似乎有效。但是,当我运行 PHP 时,我得到:

PHP Warning: PHP Startup: 
zmq: Unable to initialize module Module compiled with module API=20060613 
PHP compiled with module API=20100525 
These options need to match in Unknown on line 0`

现在呢?

更新 2

哦,等一下。我可能知道那是什么。 Dreamhost 在命令行上有 PHP 5.2。我需要 PHP 5.4,所以我一直像 /usr/local/php54/bin/php 这样调用 PHP(这显然是 PHP 5.4 可执行文件所在的位置)。

但是,configuremake 之类的命令使用普通的标准 PHP。所以我需要将 CLI PHP 升级到 5.4。

之后,一切正常。谢谢大家的帮助!

【问题讨论】:

  • 您显然需要构建绑定(考虑到您的要求)而不是库本身。 zeromq.org/bindings:php
  • @Ivo 这是在黑暗中拍摄,但也许调用 /usr/local/php54/bin/phpize 会有所帮助?否则 configure 可能会提供一个开关来强制它使用特定的 PHP 版本。我对PHP真的不够熟悉

标签: zeromq


【解决方案1】:

好像您只安装了 C 库,因此出现错误:

PHP Startup: Invalid library (maybe not a PHP library) '/usr/local/lib/libzmq.so

您还必须构建 PHP 绑定。查看这些instructions 以了解如何构建它们。

【讨论】:

  • 感谢您的回复。我按照 PHP 绑定的说明进行了工作(从 Github 构建)。这些似乎有效。但是,当我运行 PHP 时,我得到: PHP 警告:PHP 启动:zmq:无法初始化模块 使用模块 API=20060613 编译的模块 使用模块 API=20100525 编译的 PHP 这些选项需要在第 0 行的未知中匹配 现在怎么办?
【解决方案2】:

我为 windows 做这个,但我认为 linux 是一样的。 只需转到http://pecl.php.net/package/zmq/1.1.2/windows 并下载适合您的 php 版本的软件包。 然后将其解压缩并将“libzmq.dll”复制到“xampp/php”文件夹,将“php_zmq.dll”复制到“xampp/php/etc”。 在 'php.ini' 的末尾添加以下行:extension=php_zmq.dll

别忘了重启你的 xampp!祝你好运

【讨论】:

    猜你喜欢
    • 2017-10-20
    • 1970-01-01
    • 1970-01-01
    • 2013-08-25
    • 2021-09-11
    • 1970-01-01
    • 1970-01-01
    • 2022-12-20
    • 1970-01-01
    相关资源
    最近更新 更多