libgdx/Jamepad

libjamepad64.so: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.27' not found

Closed this issue · 3 comments

The current Jamepad version on maven seems to require glibc minimum 2.27. Is this intentional and really necessary? I thought libgdx was meant to be more portable across linux distrubutions, including slightly outdated ones. Never had any such troubles with other native libraries coming with libgdx, such as libgdx64.so, liblwjgl64.so or libopenal64.so.

We build this library (as well as libgdx and lwjgl3 on latest releases) on Ubuntu 18.04. Without doing a lot of effort to manually downgrade glibc, this will set the minimum glibc to 2.27. Github no longer offers 16.04 runners.

If you are wanting to support an older glibc version you will have to manually recompile all of the natives.

Yeah, no problems, I understand.
Not requesting or anything, just as a note: there are actually ways to build for older glibc's while being on a new one. For instance: https://github.com/wheybags/glibc_version_header. (In the past there was also the Linux Standard Base (LSB) SDK offering compiler wrappers that did a similar thing, although it was a more complex solution, not limited to glibc. Don't know how relevant LSB today, though.)
I would personally choose to do it for my own game projects in order to maximize portability. Other libraries are usually much easier to upgrade for a user. But glibc is a tough one. And newest glibc features aren't usually needed anyway.

If you know how to do it, feel free to change the build action and file a PR :-)