Tutorials/Update LWJGL (Legacy)

What is LWJGL?
LWJGL is the LightWeight Java Game Library. Essentially, it is what Minecraft uses for graphics, sound, and input. The latest version of LWJGL that Minecraft uses is 3.2.2.

Prior to release 1.6, Minecraft used LWJGL 2.4.2. Minecraft 1.8.1 currently uses LWJGL 2.9.2, and the launcher is able to automatically update it to newer versions, making the steps in this guide unnecessary. Updating to LWJGL 3.2 requires non-negligible code changes and is outside of the scope of this tutorial (these changes are made in 1.13).

Why update?

 * Updating will fix some input bugs where keys seem to get stuck if you click at the same time. It also removes the "ghost" mouse pointer clicking.
 * Some users report a performance increase upon updating.
 * This can also potentially fix some issues regarding sound not working/cutting out.
 * It has been reported to fix intermittent crashes on Windows.
 * It has also been known to resolve the "cannot get JAWT interface" error for Mac users using Java 7.
 * Some Linux distributions, such as openSUSE, require LWJGL to be updated before Minecraft can even run. Trying to run Minecraft without updating LWJGL may create a black screen upon loading. If you cannot play Minecraft on your Linux distribution, chances are that this is the problem.

Where to download
http://lwjgl.org/download.php

Select the latest stable release and download the lwjgl-X.X.X.zip. You should also backup your .minecraft folder before following the steps below. As a last resort, you can use the Minecraft Launcher's Force Update option to reset the files.

What to replace
In the lwjgl-X.X.X.zip, there should be two folders, named jar and natives. You should replace the files in .minecraft/bin and .minecraft/bin/natives with the versions from the .zip.

The .minecraft folder's location varies by operating system.

All operating systems
You should replace these files in .minecraft/bin/
 * Jinput.jar
 * Lwjgl.jar
 * Lwjgl_util.jar

Windows
You should replace these files in .minecraft\bin\natives\ * This needs updating. The current version of LWJGL (3.2 and higher) doesn't use the same natives set.
 * jinput-dx8.dll
 * jinput-dx8_64.dll
 * jinput-raw.dll
 * jinput-raw_64.dll
 * lwjgl.dll
 * lwjgl64.dll
 * OpenAL32.dll
 * OpenAL64.dll

Mac
You should replace these files in minecraft/bin/natives/
 * libjinput-osx.jnilib
 * liblwjgl.jnilib
 * openal.dylib
 * libopenal.dylib
 * For this one, create a copy of openal.dylib, then rename it to libopenal.dylib

GNU/Linux
You should replace these files in .minecraft/bin/natives/
 * libjinput-linux.so
 * libjinput-linux64.so
 * liblwjgl.so
 * liblwjgl64.so
 * libopenal.so
 * libopenal64.so

Alternatively, a user may install the "liblwjgl-java" package and its dependencies via a package manager. On Debian-like systems (Ubuntu, Mint, etc.) a potential root-user command line would be: apt-get install liblwjgl-java

Resources

 * All versions of LWJGL
 * Video tutorial (GNU/Linux)
 * Bash script to update LWJGL on GNU/Linux
 * Multi platform LWJGL auto updater

Tutoriels/Mettre LWJGL à jour Poradniki/Aktualizacja LWJGL Часто задаваемые вопросы/Обновление LWJGL 教程/升级LWJGL