KelvinShadewing / brux-gdk

Free runtime and development kit using SDL and Squirrel
GNU Affero General Public License v3.0
39 stars 20 forks source link

Compatibility Issue: brux-gdk will not run on Debian because of an incompatibile glibc version #37

Closed hexaheximal closed 1 year ago

hexaheximal commented 1 year ago

I have tested SuperTux Advance 0.2.1 with both the latest nightly version of brux-gdk (as of November 10, 2022) and the included version and both versions fail with a glibc error on the latest stable version of Debian.

However, the version of brux-gdk included in SuperTux Advance versions below 0.2.0 correctly run on Debian.

The version of glibc that is currently included in the latest stable version of Debian is 2.31-13+deb11u4.

Output of the nightly version (sha256 639bab13816976ee723d1e9ece552b02d8d738ac08659e1336b683caab2575fc):

/home/bob/brux-nightly/brux: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /home/bob/brux-nightly/brux)
/home/bob/brux-nightly/brux: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by /home/bob/brux-nightly/brux)

Output of the included version:

./sta: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by ./sta)
./sta: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by ./sta)
KelvinShadewing commented 1 year ago

I'm not sure what's causing this. Maybe a version mismatch between Debian and Mint. Are you able to build from source? Does that change the result?

hexaheximal commented 1 year ago

I'm not sure what's causing this. Maybe a version mismatch between Debian and Mint. Are you able to build from source? Does that change the result?

I have compiled brux-gdk from source on Debian, and it does work.

The version mismatch is exactly the problem.

Downgrading the autobuild machine's glibc version or even just running Debian stable on the autobuild machine should fix the problem while also not even breaking compatibility on other distros, since glibc is backwards-compatible but not forwards-compatible.

KelvinShadewing commented 1 year ago

Alright, good to know. I've got another machine running Debian, so I'll start using that for new builds. Thank you very much for bringing this to my attention.

hexaheximal commented 1 year ago

I just tested the version of brux-gdk in sta 0.2.1 (which is broken on debian stable) on debian testing and apparently it actually works.

hexaheximal commented 1 year ago

@KelvinShadewing I just tested the 0.2.11 build, and it crashes with the following error (which is very close to the one I've already shown):

./brux: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by ./brux)

When you said you had a computer running Debian, did you mean Debian testing?

hexaheximal commented 1 year ago

This problem has still not been fixed as of December 24, 2022 in both the nightly build and the latest GitHub release. This issue should be reopened.

Note: I have compiled a brux-gdk binary which works on debian bullseye that can be downloaded at https://hexaheximal.com/stuff/sta/brux-gdk