1. 程式人生 > >pylucene分別安裝在linux和windows(官方無Windows版的pylucene,要自編譯)

pylucene分別安裝在linux和windows(官方無Windows版的pylucene,要自編譯)

pylucene 安裝

  目前python很多包只支援32位,不支援64位。所以安裝python儘量使用32位。不要64位,否則很多功能用不了
    參考文章
    http://blog.csdn.net/orzli/article/details/12401507
    http://www.shangxueba.com/jingyan/2262010.html
    http://blog.163.com/zhoutao_1001/blog/static/979024220123177225922/
    http://blog.csdn.net/kernelspirit/article/details/2127851

說明:

編譯並安裝pylucene很簡單,但是配置合適的依賴環境麻煩。
網上有人安裝,但各個軟體版本都太老,僅供參考:
    配置1
      Python 2.7.10  32bit 
      JDK 1.8 32bit
      Java Ant 1.9.6 
      make-3.8.1 
      VS2008 
      pylucene 
      jcc (原始碼在pylucene原始碼的目錄下,應該是存在版本依賴關係的,無需另外下載
      --------------------------------------------------------------------------
     配置2
      Python 2.7.3
      (pylucene)lucene-4.4.0-py2.7-win32
      JCC-2.17-py2.7-win32    用於python啟動Java虛擬機器
      JCC和Pylucene下載地址:http://lucene.apache.org/pylucene/
      jdk-1.6.0_45 win32   請用32位的java,64位的jdk貌似不支援
      apache-ant-1.8.4 編譯lucene的時候需要用到ant,http://ant.apache.org/bindownload.cgi
      make-3.8.1 
      http://sourceforge.net/projects/gnuwin32/files/make/有windows版傻瓜一鍵安裝的exe程式

linux安裝pylucene

    http://blog.csdn.net/qingyuanluofeng/article/details/49130129

Windows安裝pylucene(步步驚心,沒有成功)

  (1)jdk
       jdk在C:\Program Files\Java\jre1.8.0_101
       環境變數: “計算機”右鍵 -> 屬性 -> 高階系統設定 -> 環境變數
            PATH變數中加入C:\Program Files\Java\jre1.8.0_101;C:\Program Files\Java\jre1.8.0_101\bin;C:\Program Files\Java\jre1.8.0_101\lib;C:\Program Files\Java\jre1.8.0_101\jre\bin\server
            * 注意這個bin\server一定要加進去,否則JCC找不到jvm.dll
      可以設JAVA_HOME變數為C:\Program Files (x86)\Program Files\Java\jre1.8.0_101


  (2)ant安裝
      編譯用ant,需要先安裝ant。pylucene的Makefile用ant
        官網http://ant.apache.org/直接下最新版本
          apache-ant-1.9.8-bin.zip(bin直接執行)原始碼版和manual版不要
        或者找老版本在http://archive.apache.org/dist/ant/binaries/中下載
      解壓到C:\ant下(不要放到預設Program Files下,名稱的空格會應該ant的使用。需要麻煩的設定才能相容)
      修改環境變數
        ANT_HOME: C:\java\apache-ant-1.8.4
        PATH加上%ANT_HOME%\bin


  -----------------------------------------------------------------------
  下面步驟中,jcc怎麼也裝不上?
      可能是python是64位,也可能是VC沒裝好(vs2008)與64版本衝突,官網給的Compiler for Python 2.7 也是32位的?
      最終替代方案參考
    http://blog.donews.com/Dzhigner/archive/2013/07/19/1295109.aspx
   說白了,也就是翻牆下載兩個egg,直接裝上,注意版本依賴又是一個坑,下載的jcc和pylucene必須版本相容,需要人工確認,否則執行會出問題。
  原始步驟(未成功)
  (3)pylucence 下載
      官網http://www.apache.org/dyn/closer.cgi給出映象地址http://mirrors.cnnic.cn/apache/
      進入資料夾Lucene/下載(此外還有java版、nutch、solr等)
      解壓後,內部含JCC檔案

  (4)安裝JCC檔案
      用於python啟動Java虛擬機器,生成 C++ 程式碼以在 C++ 和 Python 程式中呼叫 Java 程式碼。
      在pylucence的包裡直接就有,為了版本依賴。直接修改setup.py檔案,將JAVA_HOME全部替換成真實的jdk。
      執行命令
        python setup.py build
        python setup.py install

        python\D:\pylucene-6.2.0\jcc\setup.py build 
        報錯:
            building 'jcc' extension
            error: Microsoft Visual C++ 9.0 is required (Unable to find vcvarsall.bat). Get it from http://aka.ms/vcpython27
        這是因為機器上沒有VC,在http://aka.ms/vcpython27下載Microsoft Visual C++ Compiler for Python 2.7(自己安裝只能安VS2008,別的版本有問題http://blog.csdn.net/roler_/article/details/40398789)