【问题标题】:Installing PyLucene on a Mac在 Mac 上安装 PyLucene
【发布时间】:2013-01-17 10:03:59
【问题描述】:

我希望能够在我的 Mac 上使用 pyLucene。这些说明让我绝望地迷失了方向,因为每个设置或制作说明都要求我在它之前做一些事情,而且很难知道从哪里开始以及从哪个窗口开始做什么。

我已经下载了 PyLucene。我想知道的第一件事是我把文件夹放在哪里,因为这对我来说似乎不是不言而喻的。

要使用它,我被告知需要构建 JCC,它包含在 pylucene 下载中。

说明:

在命令行输入:

$ python setup.py build
$ sudo python setup.py install

但要做到这一点,我认为,我需要在正确的位置或将文件夹放在正确的位置,否则我会得到"setup.py" not found

您可以在此环境中提供任何帮助(shell 窗口?IDE?)。非常感谢您通过第一部分的任何帮助:构建 JCC,然后设置 pylucene。

【问题讨论】:

    标签: macos pylucene jcc


    【解决方案1】:

    这适用于最近的 macOS 版本。首先,确保安装:

    然后添加到您的~/.bash_profile:

    export JAVA_HOME=$(/usr/libexec/java_home)
    

    然后,重新加载你的 shell。

    Download PyLucene 并从您的 shell 中提取文件夹 cd 到它。现在,按照official installation guide 的说明进行操作:

    cd jcc
    python setup.py build
    

    现在,安装 JCC:

    python setup.py install
    

    (如果您使用的是 macOS 系统 Python,则可能需要 sudo。)

    现在返回父文件夹并编辑Makefile。按照说明将未注释的行替换为antpythonjccNUM_FILES 的实际路径:

    ANT=ant
    PYTHON=python
    JCC=python -m jcc
    NUM_FILES=8
    

    现在构建 PyLucene:

    make
    make test
    

    最后,安装构建好的 PyLucene:

    make install
    

    (如果使用系统Python,您可能需要sudo。)

    【讨论】:

    • 非常感谢!完美的作品!下次一定会尝试的!
    【解决方案2】:

    here 下载适用于 Mac 的预构建 JCC 和 pylucene 鸡蛋。

    截至目前,python 2.6 的最新版本是 JCC-2.8 和 lucene-3.1.0,所以下面我将使用 easy_install-2.6 和 python2.6。

    安装它们:

    $ sudo easy_install-2.6 JCC-*.egg
    $ sudo easy_install-2.6 lucene-*.egg
    

    测试:

    $ python2.6
    >>> import jcc
    >>> import lucene
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
      File "/Library/Python/2.6/site-packages/lucene-3.1.0-py2.6-macosx-10.6-universal.egg/lucene/__init__.py", line 7, in <module>
        import _lucene
    ImportError: dlopen(/Library/Python/2.6/site-packages/lucene-3.1.0-py2.6-macosx-10.6-universal.egg/lucene/_lucene.so, 2): Library not loaded: @rpath/libjcc.dylib
      Referenced from: /Library/Python/2.6/site-packages/lucene-3.1.0-py2.6-macosx-10.6-universal.egg/lucene/_lucene.so
      Reason: image not found
    

    如果您遇到上述错误,只需在/usr/local/lib/ 中创建libjcc.dylib 的符号链接即可修复它。 libjcc.dylib 应该在 site-packages/JCC-*.egg/ 内。

    >>> jcc.__file__
    '/Library/Python/2.6/site-packages/JCC-2.8-py2.6-macosx-10.7-intel.egg/jcc/__init__.pyc'
    >>> ^D
    
    $ ln -s /Library/Python/2.6/site-packages/JCC-2.8-py2.6-macosx-10.7-intel.egg/libjcc.dylib /usr/local/lib/
    
    $ python2.6
    >>> import jcc, lucene
    >>> 
    

    【讨论】:

    • 这对我有用!特殊版本和符号链接的组合并不明显,非常感谢。
    • @Tarun 请看下面我的回答,我只是按照官方指南进行的。
    猜你喜欢
    • 2011-05-25
    • 2011-07-30
    • 2014-12-21
    • 2018-04-04
    • 1970-01-01
    • 1970-01-01
    • 2021-05-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多