Message7107

Author jeff.allen
Recipients fwierzbicki, jeff.allen
Date 2012-05-19.14:51:17
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1337439077.48.0.892882246503.issue1889@psf.upfronthosting.co.za>
In-reply-to
Content
I spent some time looking into this.

The problem appears to be that we have updated JFFI to a snapshot release that does not support the full set of platforms. When we use JFFI, com.kenai.jffi.internal.StubLoader looks for a JAR named after the architecture of the machine and loads a versioned DLL from it. Here is the one for i386:

>jar tf extlibs\jffi-i386-Windows.jar
META-INF/
META-INF/MANIFEST.MF
jni/
jni/i386-Windows/
jni/i386-Windows/jffi-1.2.dll

But the one for 64-bit Windows, and several others, contain nothing:

>jar tf extlibs\jffi-x86_64-Windows.jar
jni/

In a previous version, it looked like this:

>jar tf ..\jython-2.5\extlibs\jffi-x86_64-Windows.jar
META-INF/
META-INF/MANIFEST.MF
jni/
jni/x86_64-Windows/
jni/x86_64-Windows/jffi-1.0.dll

Quite recently, the project supplied new JARs, see: https://github.com/jnr/jffi/commit/e3e5810e6d9ea3d7669ada2e18226d472bcb81ee (this seems to be the authoritative source).

Rudely forcing the JAR from that commit into extlibs solves the problem for Windows 7/64. I won't try to make a patch for that as it's probably easier to go to the source and get a stable release. Although actively worked, it is not clear to me what the project considers a stable release.
History
Date User Action Args
2012-05-19 14:51:17jeff.allensetmessageid: <1337439077.48.0.892882246503.issue1889@psf.upfronthosting.co.za>
2012-05-19 14:51:17jeff.allensetrecipients: + jeff.allen, fwierzbicki
2012-05-19 14:51:17jeff.allenlinkissue1889 messages
2012-05-19 14:51:17jeff.allencreate