New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
"Extension string retrieval is broken" when trying to run generated project with JDK 21 on linux #7308
Comments
This looks to me like an Intel driver issue. This is more common on older Windows installations, but can happen on if your integrated graphics are either too old hardware-wise to support some common OpenGL feature, or they use newer hardware that hasn't had the drivers updated and so is using some barebones driver meant to work even on extremely old devices. I'm guessing other graphical applications are using the Nvidia GPU, and I'm not sure if Java has any way of suggesting to a Linux OS that it should run on the discrete GPU, if one is available. I don't know what distro/version you're using, nor your CPU/GPU versions. This is probably going to take some googling for your specific hardware situation -- but if you use Linux, you're probably used to that by now. My only Linux machine just had its battery nearly explode, so I can't do anything to reproduce right now. |
No, other apps don't use nvidia (I don't have drivers for it installed at all) - I'm using purely Intel. Intel CPU is not that old ( As for distro: I didn't notice such issues in any other apps, so I was quite surprised. Googling unfortunately doesn't bring any useful data (almost nothing is there) :( I tried OpenJDK build from both Oracle and Temurin, both give the same results. vainfo output:
|
I did some tests and the app works on libgdx 1.11.0 and is broken on 1.12.0 and 1.12.1 (with the error above). I'll try to bisect to find the commit that broke it (hopefully I'll be able to build libgdx). |
IMO the most likely culprits are the LWJGL 3 updates in 1.12.0 and 1.12.1. Instructions for building libGDX locally can be found here. |
I'm curious, is there a way to build just the desktop part of libgdx? |
Nevermind, went with Android Studio. So the commit that broke the example app is b23419c Which is just a library update, I probably should take it to lwjgl3, but I have zero knowledge how it is used, so I'm not sure I can give a good bug report there. |
Please ensure you have given all the following requested information in your report.
Issue details
I generated project from https://libgdx.com/wiki/start/project-generation, selected only desktop and no extensions.
After project was generated it didn't build at first (because core has source set to 1.7, which is not supported by JDK 21) - I set both core and desktop modules to 21 source level.
After that I did
./gradlew desktop:run
and got following errors:Reproduction steps/code
This is uploaded code (generated from the official web page with only desktop mode and changed build.gradle in core and desktop to have source code level set to 21) - https://github.com/krzyk/libgdx-test
Linux, with Xorg, iGPU with unused nvidia GPU (everything runs on intel one).
Maybe there is issue with selecting the correct GPU?
Other applications that use OpenGL/Vulcan are working fine (e.g steam games).
I also tried the maven setup, which after I migrated to lwjgl3 gave exactly the same error/stacktraces (with the default lwjgl2 it breaks in missing native link).
Version of libGDX and/or relevant dependencies
1.12.1
Stacktrace
Please select the affected platforms
The text was updated successfully, but these errors were encountered: