[libvoikko] Win64 tester(s) needed
hatapitk at iki.fi
Sun Nov 28 21:59:10 EET 2010
It would be very interesting to know if libvoikko works on 64 bit Windows when
built as 64 bit binary. For those who don't know, 64 bit Windows is quite
different thing from 64 bit Linux. Linux and most other operating systems than
Windows use so called ILP32 data model for 32 bit binaries and LP64 data model
for 64 bit binaries. Windows however uses ILP32 for 32 bit binaries and LLP64
for 64 bit binaries.
The major difference between LP64 and LLP64 is that "long" is 64 bits on LP64
and 32 bits on LLP64. What follows is that almost everywhere except on Win64
sizeof(long) == sizeof(size_t) == sizeof(void*)
I'm not sure if anything within libvoikko assumes this equality. It is quite
possible that there are such places within the code which would mean that the
library cannot be built as 64 bit binary on Windows.
The problem I'm trying to address here is that the JNA (which I'm using to
write the Java interface for libvoikko) does not have a built in type mapping
for size_t. We are using size_t in lots of places within the public API of
libvoikko. The recommendation on the JNA users mailing list is to use
NativeLong for size_t but I'm quite sure it would not work on Win64.
I could just ignore Win64 for now. Then again if someone on this list is able
to test on that platform it would be perfect time to fix these problems. It
will hopefully take a few years before 64 bit desktop applications become
really popular on Windows but it does not hurt to be prepared for that. If you
have a 64 bit Windows and want to help, try building libvoikko as instructed
If it fails to build, post the errors here. Or submit a patch if you can.
More information about the Libvoikko