On Mon, 24 Mar 2008, Charles wrote:

I see, but then jcc.dll/libjcc.so location would have to be added to
the system path/LD_LIBRARY_PATH.

Yes.

 Then, when --shared is used when JCC is invoked, the resulting extension is
 linked with this shared library instead of having all the necessary JCC
 runtime code statically linked into it. This allows it to share the JCC env
 structure with all other such JCC-built extensions. This env structure is
 the gateway to the one single Java VM allowed per process.

If someone compiled jcc as shared, does the normal jcc as python
extension also linked to this shared library (jcc.dll/libjcc.so)
otherwise if someone import _jcc and call initvm and at the same time
use an extension using shared jcc, two JVM will be created?

This is true. If you wanted to use jcc together we a jcc-compiled extension in the same process, you'd have to also build jcc against the shared library. This is relatively easy to do by changing setup.py accordingly.
If you have a use-case for this, it can be made the default.

Andi..

_______________________________________________
pylucene-dev mailing list
[email protected]
http://lists.osafoundation.org/mailman/listinfo/pylucene-dev

Reply via email to