Christian Heimes wrote: > I'm looking for Windows binaries of JCC 2.1 and PyLucene 2.4. I tried to > build the Windows binaries myself using Sun JDK 1.6.0u12 and MinGW32 but > I had no luck.
Good news everybody! Apparently the JCC sources are not compatible with GCC 3.4. I had more luck with GCC 4.1.2 from http://www.develer.com/oss/GccWinBinaries. I've appended a working patch against the latest trunk. The PyLucene Makefile is really a pain in the ... I had to pull off several ugly hacks in order to compile PyLucene. Any other system than a Makefile would greatly improve the situation on Windows. For example http://www.blueskyonmars.com/projects/paver/ is really nice and easy to use. Christian
Index: setup.py =================================================================== --- setup.py (revision 488) +++ setup.py (working copy) @@ -22,6 +22,10 @@ else: platform = sys.platform +if platform == "win32": + JDK = os.path.join(os.environ['PROGRAMFILES'], 'Java', 'jdk1.6.0_12') +else: + JDK = "" # Add or edit the entry corresponding to your system in the INCLUDES, CFLAGS # DEBUG_CFLAGS, LFLAGS and JAVAC dictionaries below. These entries are used @@ -40,8 +44,8 @@ '/usr/lib/jvm/java-6-openjdk/include/linux'], 'sunos5': ['/usr/jdk/instances/jdk1.6.0/include', '/usr/jdk/instances/jdk1.6.0/include/solaris'], - 'win32': ['o:/Java/jdk1.6.0_02/include', - 'o:/Java/jdk1.6.0_02/include/win32'], + 'win32': [os.path.join(JDK, 'include'), + os.path.join(JDK, 'include', 'win32')], } CFLAGS = { @@ -78,7 +82,7 @@ 'sunos5': ['-L/usr/jdk/instances/jdk1.6.0/jre/lib/i386', '-ljava', '-L/usr/jdk/instances/jdk1.6.0/jre/lib/i386/client', '-ljvm', '-R/usr/jdk/instances/jdk1.6.0/jre/lib/i386:/usr/jdk/instances/jre/lib/i386/client'], - 'win32': ['/LIBPATH:o:/Java/jdk1.6.0_02/lib', 'jvm.lib'], + 'win32': ['-L%s' % os.path.join(JDK, 'lib'), '-ljvm'], } if platform == 'linux2': @@ -89,7 +93,7 @@ 'ipod': ['jikes', '-cp', '/usr/share/classpath/glibj.zip'], 'linux2': ['javac'], 'sunos5': ['javac'], - 'win32': ['javac.exe'], + 'win32': [os.path.join(JDK, 'bin', 'javac.exe')], } @@ -245,7 +249,7 @@ elif platform == 'win32': jcclib = 'jcc%s.lib' %(debug and '_d' or '') kwds["extra_link_args"] = \ - lflags + ["/IMPLIB:%s" %(os.path.join('jcc', jcclib))] + lflags + ["-IMPLIB:%s" % (os.path.join('jcc', jcclib))] package_data.append(jcclib) else: kwds["extra_link_args"] = lflags