错误的ELF类:ELFCLASS32使用Linux时

时间:2014-11-04 16:23:32

标签: java lwjgl

我仔细研究了所有这些,但我的解决方案并不存在。 enter image description here

我正在为我的游戏添加linux支持。它适用于Windows(32位和64位,Windows 7和8测试),但是当我把它交给linux上的测试人员时,他收到了这个错误:

Exception in thread "Timer-0" java.lang.UnsatisfiedLinkError:  /home/jai/Downloads/res/linux/liblwjgl.so: /home/jai/Downloads/res/linux/liblwjgl.so: wrong ELF class:  ELFCLASS32 (Possible cause: architecture word width mismatch)
    at java.lang.ClassLoader$NativeLibrary.load(Native Method)
    at java.lang.ClassLoader.loadLibrary1(ClassLoader.java:1965)
    at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1890)
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1851)
    at java.lang.Runtime.load0(Runtime.java:795)
    at java.lang.System.load(System.java:1062)
    at org.lwjgl.Sys$1.run(Sys.java:70)
    at java.security.AccessController.doPrivileged(Native Method)
    at org.lwjgl.Sys.doLoadLibrary(Sys.java:66)
    at org.lwjgl.Sys.loadLibrary(Sys.java:95)
    at org.lwjgl.Sys.<clinit>(Sys.java:112)
    at org.lwjgl.opengl.Display.<clinit>(Display.java:135)
    at StartScreenExperiments.Test2$1.run(Test2.java:107)
    at java.util.TimerThread.mainLoop(Timer.java:555)
    at java.util.TimerThread.run(Timer.java:505)

我用来更改操作系统的代码如下:

if (System.getProperty("os.name").contains("Windows")) {
        // Windows
        System.setProperty("org.lwjgl.librarypath", new File("res/natives-win").getAbsolutePath());
    } else if (System.getProperty("os.name").contains("Mac")) {
        // Mac OS X
        System.setProperty("org.lwjgl.librarypath", new File("res/macosx").getAbsolutePath());
    } else if (System.getProperty("os.name").contains("Linux")) {
        // Linux
        System.setProperty("org.lwjgl.librarypath", new File("res/linux").getAbsolutePath());
    } else if (System.getProperty("os.name").contains("Sun")) {
        // SunOS (Solaris)
        System.setProperty("org.lwjgl.librarypath", new File("res/solaris").getAbsolutePath());
    } else {
        notsupported = true;
    }

我在res / linux中有以下本机: enter image description here

阅读其他帖子,我知道它与32位32位或32位或其他任何东西有关,但我实际上并不知道如何修复它。

显然,我希望我的游戏可以在上面列出的所有操作系统上运行,无论它们是32位还是64位。

0 个答案:

没有答案