-
Notifications
You must be signed in to change notification settings - Fork 5
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
Linux Mint requires installing libsdl2-dev to run freej2me-sdl #35
Comments
Well, yeah, it's expected that you need sdl's libs installed to run FreeJ2ME's SDL flavor. Though the README documentation doesn't explicitly state that (and wasn't touched when that interface had a major overhaul so its build steps are also out-of-date). As for controls in SDL, they should be reworked at some point, probably along with the UI. |
The unexpected thing is dependency on -dev to launch, which is usually only needed for building. And a normal libsdl2 didn't help (I'll test it on my end asap). |
Which means Mint is running ages-old SDL2 as their default package. current SDL2 is 2.30 (they actually already went to the first SDL3 RC a while ago) whereas the minimum version required by libsdl4j is 2.24... released mid-2022. Edit: I guess a workaround would be to include an updated libsdl2.so library alongside freej2me-sdl.jar, but that's something that warrants some discussion first, as well as an automated way of doing such inclusion. |
OK same issue in ubuntu 24.04.
Installing I wonder if it's not fixed by sdl itself but by some of its dependencies instead... In any case, telling people to install |
It's fixed because libsdl4j requires a libsdl2 version equal to, or higher than the one it was built against. Since the oldest libsdl4j available is 2.24.0, that's the oldest we can go on libsdl2. Ideally i'd want users to not even bother with -dev/git packages of any kind, especially on distros like Debian, which will probably take a decade to update SDL2 to 2.24+, so maybe building and shipping a native sdl lib alongside the sdl interface is the best way forward... not sure how that would work for older systems though, despite SDL being VERY portable. |
If I'm understanding this correctly, the -dev package for this is the developer package for people who want to build SDL programs (as mentioned in this amazingly wordy page: https://wiki.libsdl.org/SDL2/Installation ). Hence why it's weird. The normal libsdl2 package is already 2.30 which should be sufficient I guess. |
Could it be about missing symlink? The -dev package may add the symlink |
If you used an up-to-date version of libsdl4j instead of the oldest version, a copy of the library is bundled in the JAR, which should avoid all such problems. |
Libsdl copies are bundled on all sdl4j versions, although those are only built for a few operating systems and archs, far from all the stuff FreeJ2ME, and SDL, can run on... Hence why i think building and shipping this lib alongside freej2me-sdl would be the best approach. Bundling every single one of them inside the jar would make it way too heavy and cumbersome. |
Otherwise there is this error:
Ran into this while setting up FJ+ for TASing, and feos asked me to make an issue.
Edit: Also what are the controls on SDL? I only found the arrow keys and 5 that work, no other controls from the AWT frontend that I could find.
The text was updated successfully, but these errors were encountered: