由于 Xapian 已从 Ubuntu 存储库中删除,我正在尝试根据此处的说明构建我自己的 .deb:
http://article.gmane.org/gmane.comp.search.xapian.general/8855
我只能通过省略“rm debian/control”来让事情在最初几秒钟之后取得进展,但如果我这样做,看起来 Python 和 Ruby 绑定正在构建并正确传递它们的 smoketest 版本。
但是,构建的 PHP 部分因以下错误而失败:
/home/charlie/xapian-bindings-1.2.8/php/smoketest.php:38: include(xapian.php): failed to open stream: No such file or directory
FAIL: smoketest.php
/home/charlie/xapian-bindings-1.2.8/php/php5/ 中有一个 xapian.php 文件,但如果我将其复制到 /home/charlie/xapian-bindings-1.2.8/php/ 或将路径更改为它在 smoketest.php 中,构建在开始附近失败:
dpkg-source: error: aborting due to unexpected upstream changes
不幸的是,我已经脱离了从源头构建的舒适区。有人有什么想法吗?
编辑詹姆斯的回答:
如果我完全按照说明进行操作,则可以正常构建。我最初在测试 VM 上构建它,但由于未安装 PHP 本身,因此没有构建 PHP 包。明显的陷阱,但值得一提。
安装产生了以下错误:
Setting up php5-xapian (1.2.8-1) ...
Processing triggers for libapache2-mod-php5 ...
dpkg (subprocess): unable to execute installed post-installation script (/var/lib/dpkg/info/libapache2-mod-php5.postinst): Permission denied ssion denied
dpkg: error processing libapache2-mod-php5 (--install):
subprocess installed post-installation script returned error exit status 2
Errors were encountered while processing:
libapache2-mod-php5
它只是一个用于重新启动 Apache 的脚本。在运行 sudo dpkg -i php5-xapian_*.deb 之前停止 Apache 可以防止错误。Xapian 现在出现在 phpinfo() 中。任务完成。谢谢。