On Fri, 25 Feb 2011, tuxdna wrote:

I built pylucene-2.4.1-1 on Fedora 14.
( https://tuxdna.wordpress.com/2011/02/25/pylucene-on-fedora-14/ )

When I did make test, I found test failures which I am pasting below:

This looks like a version of jcc "too new" for this old a pylucene is used.
Which version of jcc did you use ?
The one that came with pylucene 2.4.1 or a newer one ?


I installed it using pip-python, so it would be the latest available there:

$ pip-python search jcc

JCC                       - a C++ code generator for calling Java from
C++/Python

 INSTALLED: 2.7 (latest)

The one with pylucene 2.4.1 is JCC 2.2

Yes, that one (2.2) works with PyLucene 2.4.1, the newest (2.7) doesn't.
The reason is that some things, such as array support, changed since then and PyLucene's 2.4.1 unit tests are written for the JCC version it was produced with.

Is there any reason you have to use such an old version of Lucene. 2.4.1 is not really supported anymore. The current version of Lucene (and PyLucene) is 3.0.3. The newest supported 2.x version is 2.9.4 and it works with JCC 2.7.

Andi..



Then I followed this link
http://lucene.apache.org/pylucene/jcc/documentation/install.html#shared
and the jcc/setup.py file which says that setuptools need to be
atleast 0.6c7 for linux. I have
python-setuptools  0.6.14 on my system.

Then checked that sh_link_shared_object
from setuptools.command.build_ext import sh_link_shared_object

By I was sure that setuptools support shared linking.

JCC 2.2 built fine and I installed it.

However when I built the pylucene 2.4.1, I got this this error:'


===========================BEGIN===========================
$ make
...
...
/usr/bin/python -m jcc --shared --jar
lucene-java-2.4.1/build/lucene-core-2.4.1.jar --jar
lucene-java-2.4.1/build/contrib/snowball/lucene-snowball-2.4.1.jar
--jar lucene-java-2.4.1/build/contrib/highlighter/lucene-highlighter-2.4.1.jar
--jar lucene-java-2.4.1/build/contrib/analyzers/lucene-analyzers-2.4.1.jar
--jar lucene-java-2.4.1/build/contrib/regex/lucene-regex-2.4.1.jar
--jar lucene-java-2.4.1/build/contrib/queries/lucene-queries-2.4.1.jar
--jar lucene-java-2.4.1/build/contrib/instantiated/lucene-instantiated-2.4.1.jar
--jar build/jar/extensions.jar --package java.lang java.lang.System
java.lang.Runtime --package java.util java.util.Arrays
java.text.SimpleDateFormat --package java.io java.io.StringReader
java.io.InputStreamReader java.io.FileInputStream --exclude
org.apache.lucene.queryParser.Token --exclude
org.apache.lucene.queryParser.TokenMgrError --exclude
org.apache.lucene.queryParser.QueryParserTokenManager --exclude
org.apache.lucene.queryParser.ParseException --python lucene --mapping
org.apache.lucene.document.Document
'get:(Ljava/lang/String;)Ljava/lang/String;' --mapping
java.util.Properties
'getProperty:(Ljava/lang/String;)Ljava/lang/String;' --sequence
org.apache.lucene.search.Hits 'length:()I'
'doc:(I)Lorg/apache/lucene/document/Document;' --version 2.4.1
--module python/collections.py --files 2 --build
 Warning: renaming static method 'isInfinite' on class
java.lang.Double to 'isInfinite_' since it is shadowed by non-static
method of same name.
 Warning: renaming static method 'isNaN' on class java.lang.Double to
'isNaN_' since it is shadowed by non-static method of same name.
 Warning: renaming static method 'toString' on class java.lang.Double
to 'toString_' since it is shadowed by non-static method of same name.
 Warning: renaming static method 'toString' on class
java.lang.Integer to 'toString_' since it is shadowed by non-static
method of same name.
 Warning: renaming static method 'fileModified' on class
org.apache.lucene.store.FSDirectory to 'fileModified_' since it is
shadowed by non-static method of same name.
 Warning: renaming static method 'toString' on class java.lang.Long
to 'toString_' since it is shadowed by non-static method of same name.
 Warning: renaming static method 'toString' on class
java.lang.Boolean to 'toString_' since it is shadowed by non-static
method of same name.
 Warning: renaming static method 'toString' on class
java.lang.Character to 'toString_' since it is shadowed by non-static
method of same name.
Traceback (most recent call last):
 File "/usr/lib64/python2.7/runpy.py", line 162, in _run_module_as_main
   "__main__", fname, loader, pkg_name)
 File "/usr/lib64/python2.7/runpy.py", line 72, in _run_code
   exec code in run_globals
 File 
"/usr/lib64/python2.7/site-packages/JCC-2.2-py2.7-linux-x86_64.egg/jcc/__main__.py",
line 5, in <module>
   cpp.jcc(sys.argv)
 File 
"/usr/lib64/python2.7/site-packages/JCC-2.2-py2.7-linux-x86_64.egg/jcc/cpp.py",
line 477, in jcc
   shared, compiler, modules)
 File 
"/usr/lib64/python2.7/site-packages/JCC-2.2-py2.7-linux-x86_64.egg/jcc/python.py",
line 1289, in compile
   raise NotImplementedError, "JCC was not built with --shared mode
support, see JCC's INSTALL file for more information"
NotImplementedError: JCC was not built with --shared mode support, see
JCC's INSTALL file for more information
make: *** [compile] Error 255
===========================END===========================

Please tell me what am I doing wrong here?

Thanks.

/tuxdna

Reply via email to