无法在AMD 64位平台上加载IA 32位.dll [英] Can't load IA 32-bit .dll on a AMD 64-bit platform
问题描述
我正在尝试使用Java中的 SVMLight ,使用此页上的JNI包装:
I am trying to use SVMLight from Java, using the JNI wrapper on this page:
static {
System.loadLibrary("lib/JNI_SVM-light-6.01/lib/svmlight");
}
我收到以下错误:
... lib \JNI_SVM-light-6.01\lib\svmlight.dll:无法加载IA 32位.dll
在AMD 64 -bit平台
... lib\JNI_SVM-light-6.01\lib\svmlight.dll: Can't load IA 32-bit .dll on a AMD 64-bit platform
我可以通过重新编译64位的.dll来解决这个问题吗? 我该怎么做?有没有可以使用的其他解决方法? SVMLight使C源代码可用。
Can I solve this by recompiling the .dll for 64 bit? How would I go about doing this? Is there some other workaround I can use? SVMLight makes the C source code available.
推荐答案
是的,您必须重新编译64位的DLL。您唯一的其他选择是切换到32位JVM,或以其他方式获取32位进程来代替您加载DLL,并以某种方式与该进程通信。
Yes, you'll have to recompile the DLL for 64-bit. Your only other option is to switch to a 32-bit JVM, or otherwise get some 32-bit process to load the DLL on your behalf and communicate with that process somehow.
这篇关于无法在AMD 64位平台上加载IA 32位.dll的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!