【问题标题】:Error while making CLucene for Max OS X 10.10为 Mac OS X 10.10 制作 CLucene 时出错
【发布时间】:2015-01-28 00:34:38
【问题描述】:

我正在尝试在 Max OS X 10.10 中构建 CLucene。我遵循了here 的指示。 cmake .. 命令运行正确,但之后,当我尝试使用生成的 makefile 运行 make 时,出现以下错误:

我在谷歌上搜索了一下,在一些论坛上发现了类似错误的报告,甚至在 * 中也发现了一个类似的问题:Error when Make CLucene,但我在任何地方都找不到规范的解决方案。

我应该怎么做才能解决这个问题?

【问题讨论】:

  • 假设您将pthread 标头安装在可以找到它们的位置,那么我相信链接票证上的评论员是正确的,这是CLucene 源的包含标头问题和你应该接受他们。但是,如果是这种情况,只需将包含添加到该文件(或一些常见的包含文件)中就可能会修复它。
  • 假设如果所需的标题不在正确的位置,我该如何添加它?我的意思是,只需获取头文件并将其放在适当的位置(这应该在哪里?在$PATH 指定的位置列表中的某个位置?)就可以了,还是我必须修改源代码以包含它?
  • 如果您的系统上根本没有 pthread 标头,您需要了解如何在 OS X 上正确安装它们。尽管我想它们可能已经存在。不幸的是,我不知道如何检查或安装它们(我不使用 OS X)。不,$PATH 无关。

标签: lucene makefile cmake osx-yosemite clucene


【解决方案1】:

Mac OS X 版本存在一个错误。需要打补丁2个文件(假设当前目录是CLucene的):

如果您单击链接,您将直接获得补丁。如果您在应用补丁时遇到问题,请告诉我。

【讨论】:

  • 嗨。打补丁,生成libclucene-core.dylib库。这是否足够,或者我是否需要包含在bin 文件夹中生成的其他dylibs?
  • 你也应该加libclucene-shared.dylib,根据src/shared/README
  • 这个包创建了一个用于所有 CLucene 项目的库。它提供了过去 CLucene 内部的跨平台宏和函数。由于我们需要能够链接到共享 clucene-core 库,因此我们需要将这些函数分开。它们提供诸如 cl_* 字符串宏、文件处理函数、替换函数等内容。。哪里提到的?
  • 在 src 中有很多 cl_* 宏。如果不包含这个,其他库中的代码将无法编译
  • 非常感谢!感谢您的帮助.. :)
最近更新 更多