minecraft, 11.2 - Failed to locate library: liblwjgl.so

Hello, I got this error today - micraft client can't start.

I installed minecraft via minecraft-client package and yes, I have proper path "/usr/local/share/minecraft-client/minecraft-runtime" in profile.

Error:
Code:
---- Minecraft Crash Report ----
// I blame Dinnerbone.

Time: 30.7.18 0:56
Description: Initializing game

java.lang.UnsatisfiedLinkError: Failed to locate library: liblwjgl.so
        at org.lwjgl.system.Library.loadSystem(Library.java:147)
        at org.lwjgl.system.Library.loadSystem(Library.java:67)
        at org.lwjgl.system.Library.<clinit>(Library.java:50)
        at org.lwjgl.system.MemoryUtil.<clinit>(MemoryUtil.java:61)
        at org.lwjgl.system.MemoryStack.<init>(MemoryStack.java:61)
        at org.lwjgl.system.MemoryStack.create(MemoryStack.java:82)
        at org.lwjgl.system.MemoryStack.create(MemoryStack.java:71)
        at java.lang.ThreadLocal$SuppliedThreadLocal.initialValue(ThreadLocal.java:284)
        at java.lang.ThreadLocal.setInitialValue(ThreadLocal.java:180)
        at java.lang.ThreadLocal.get(ThreadLocal.java:170)
        at org.lwjgl.system.MemoryStack.stackGet(MemoryStack.java:628)
        at org.lwjgl.system.MemoryStack.stackPush(MemoryStack.java:637)
        at cfs.a(SourceFile:126)
        at cfi.an(SourceFile:554)
        at cfi.am(SourceFile:433)
        at cfi.a(SourceFile:377)
        at net.minecraft.client.main.Main.main(SourceFile:144)


A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------

-- Head --
Thread: Client thread
Stacktrace:
        at org.lwjgl.system.Library.loadSystem(Library.java:147)
        at org.lwjgl.system.Library.loadSystem(Library.java:67)
        at org.lwjgl.system.Library.<clinit>(Library.java:50)
        at org.lwjgl.system.MemoryUtil.<clinit>(MemoryUtil.java:61)
        at org.lwjgl.system.MemoryStack.<init>(MemoryStack.java:61)
        at org.lwjgl.system.MemoryStack.create(MemoryStack.java:82)
        at org.lwjgl.system.MemoryStack.create(MemoryStack.java:71)
        at java.lang.ThreadLocal$SuppliedThreadLocal.initialValue(ThreadLocal.java:284)
        at java.lang.ThreadLocal.setInitialValue(ThreadLocal.java:180)
        at java.lang.ThreadLocal.get(ThreadLocal.java:170)
        at org.lwjgl.system.MemoryStack.stackGet(MemoryStack.java:628)
        at org.lwjgl.system.MemoryStack.stackPush(MemoryStack.java:637)
        at cfs.a(SourceFile:126)
        at cfi.an(SourceFile:554)
        at cfi.am(SourceFile:433)

-- Initialization --
Details:
Stacktrace:
        at cfi.a(SourceFile:377)
        at net.minecraft.client.main.Main.main(SourceFile:144)

-- System Details --
Details:
        Minecraft Version: 1.13
        Operating System: FreeBSD (amd64) version 11.2-RELEASE
        Java Version: 1.8.0_172, Oracle Corporation
        Java VM Version: OpenJDK 64-Bit Server VM (mixed mode), Oracle Corporation
        Memory: 63097544 bytes (60 MB) / 182792192 bytes (174 MB) up to 1060372480 bytes (1011 MB)
        JVM Flags: 5 total; -Xmx1G -XX:+UseConcMarkSweepGC -XX:+CMSIncrementalMode -XX:-UseAdaptiveSizePolicy -Xmn128M
        Launched Version: 1.13
        LWJGL: 3.1.6 build 14
        OpenGL: ~~ERROR~~ NoClassDefFoundError: Could not initialize class org.lwjgl.system.Library
        GL Caps:
        Using VBOs: Yes
        Is Modded: Probably not. Jar signature remains and client brand is untouched.
        Type: Client (map_client.txt)
        Resource Packs:
        Current Language: ~~ERROR~~ NullPointerException: null
        Profiler Position: N/A (disabled)
        CPU: <unknown>

lwjgl library is installed:
Code:
# pkg info -l lwjgl
lwjgl-2.9.3:
        /usr/local/lib/lwjgl2.9.3/liblwjgl64.so
        /usr/local/share/java/classes/lwjgl/lwjgl.jar
        /usr/local/share/java/classes/lwjgl/lwjgl_test.jar
        /usr/local/share/java/classes/lwjgl/lwjgl_util.jar
        /usr/local/share/java/classes/lwjgl/lwjgl_util_applet.jar
        /usr/local/share/licenses/lwjgl-2.9.3/BSD3CLAUSE
        /usr/local/share/licenses/lwjgl-2.9.3/LICENSE
        /usr/local/share/licenses/lwjgl-2.9.3/catalog.mk

Thanks for ideas!
 
What FreeBSD version are you using and where did the package come from? I assume you installed it using # pkg install minecraft-client? If so: did you also install any other software using this same method?

Performed any updates recently?
 
1) 11.2-REELASE
2) yes, minecraft-client package
3) of course, I have installed cca 1300 other packages

Minecraft worked perfectly about 2 years. Now, this problem with lwjgl...
 
Right, in the mean time I performed my tests on a 11.2 environment which was fully upgraded through both freebsd-update as well as binary packages. And I can confirm the problem; perfect reproduction of the issue.

However... I also noticed that this only happens with 1.13 and not so much 1.12.2 or other versions before that. Considering the massive overhaul which 1.13 got and the fact that the targeted OS was Linux (not so much FreeBSD) it becomes difficult for me to determine the cause right now.

This could be a problem with 1.13 itself with regards to Linux / Unix-like compatibility, it could be an issue with the launcher (the Windows launcher got several updates through the snapshot process) or it could be an issue with the port itself. Considering the nature of the error it looks like a classpath related issue, but I haven't fully tested that.

Bottom line: this isn't you, it's a system problem. 'somewhere'.
 
A stab in the dark but could it be down to it looking for liblwjgl.so (32-bit) and not liblwjgl64.so (64-bit) lib?
 
A stab in the dark but could it be down to it looking for liblwjgl.so (32-bit) and not liblwjgl64.so (64-bit) lib?
Yes. It looks like lwjgl library is 64bit only and minecraft (java bindings) is looking for 32bit liblwjgl.so
 
Well, according to the package Makefile games/lwjgl is supposed to satisfy both:
Code:
ONLY_FOR_ARCHS= i386 amd64
But I agree, the error message definitely seems to point in this direction. It wouldn't be the first time 1.13 caused errors on 32bit platforms due to 64bit settings.
 
I think the problem lies in that mc 1.13 requires version 3 of the library (specifically, 3.1.6), while 1.12.2 was using lwjgl 2.9.4.
 
It looks like some work for lwjgl port maintainer. Do you think I have (or someone) to enter a bug/report to the FreeBSD Bugzilla (ports section)?
 
whilhelm But minecraft updates itself (downloads new java packages) automatically, or not? How to stick with given version?
In your profile menu, in the minecraft launcher, you are able to run earlier versions of minecraft. these versions rely on the version of lwjgl that is already ported, and will run.
 
With some help on #freebsd freenode, I am attempting to compile lwjgl 3.2 on FreeBSD 11.1-STABLE. I have modified lwjgl's build.xml file to compile using gcc8.

https://github.com/LWJGL/lwjgl3/blob/2359eb7b5a9e7e629beae95d3cdab8e997c59039/config/linux/build.xml

And here is my modified build.xml, to work with gcc8:

https://paste.pound-python.org/show/Akuv2tbz32OTgSyqZKfJ/

Using the build instruction found here:
https://www.lwjgl.org/guide#build-instructions

I am getting the following output:
https://paste.pound-python.org/show/8GO6dhwjNrQFu1ddtx2a/
 
Thank you Petr. With that git repo you mentioned, I managed to compile LWJGL3 and get Minecraft 1.13.2 running on FreeBSD 10.3. :)
 
Back
Top