Unciv: Unciv not working in Raspberry Pi 3B+ (Linux armhf)
Hi! I tried to run Unciv in Raspberry Pi and got the following errors.
~$ java -jar Unciv.jar
Picked up _JAVA_OPTIONS: -Dawt.useSystemAAFontSettings=on -Dswing.aatext=true
Packing textures - 349ms
Could not initialize Discord
Exception in thread "main" com.badlogic.gdx.utils.GdxRuntimeException: Couldn't load shared library 'libgdxarm.so' for target: Linux, 32-bit
at com.badlogic.gdx.utils.SharedLibraryLoader.load(SharedLibraryLoader.java:126)
at com.badlogic.gdx.utils.GdxNativesLoader.load(GdxNativesLoader.java:31)
at com.badlogic.gdx.backends.lwjgl.LwjglNativesLoader.load(LwjglNativesLoader.java:46)
at com.badlogic.gdx.backends.lwjgl.LwjglApplication.<init>(LwjglApplication.java:83)
at com.badlogic.gdx.backends.lwjgl.LwjglApplication.<init>(LwjglApplication.java:71)
at com.unciv.app.desktop.DesktopLauncher.main(DesktopLauncher.kt:67)
Caused by: com.badlogic.gdx.utils.GdxRuntimeException: Unable to read file for extraction: libgdxarm.so
at com.badlogic.gdx.utils.SharedLibraryLoader.readFile(SharedLibraryLoader.java:134)
at com.badlogic.gdx.utils.SharedLibraryLoader.loadFile(SharedLibraryLoader.java:290)
at com.badlogic.gdx.utils.SharedLibraryLoader.load(SharedLibraryLoader.java:122)
... 5 more
Note that Raspberry Pi comes pre-installed with Java 11. I tried to manually install java8-jre, setting it as default and run Unciv, but got same kind of error. I tried using Windows 32 bit jar. It also failed.
About this issue
- Original URL
- State: closed
- Created 3 years ago
- Comments: 23 (21 by maintainers)
@asda488 @yairm210 yes the Game is confirmed to be working on Raspberry Pi from version 3.18.0. The command
java -jar Unciv.jarworks fine. I have tested Mods too. BothRekMODand5Hex Tilesetis working fine. And yes I am using an Raspberry Pi OSarmhf. Here is a Screenshot from Pi,Ok, so does the latest release has this fix? Ok I will start testing now.
Update: I tested Release 3.17.14 but it threw the following error.
Update 2: Ok, 3.17.14 was released 2 days ago while the commit https://github.com/yairm210/Unciv/commit/25cad3aef2e3fb38a2088840cf7c768021cd2fb8 was made yesterday. I need to wait for the next release to test it.
Awesome! 😃
I’d close it then.
I have the
.jarI built myself here, if you really wanted to you could probably test it before next release, up to you. It contains binaries forarmhfso hopefully it works.Fixed for
aarch64/arm64building.jarfile without Android Studio and with JDK11, building commit 25cad3a. Should also work onarmhfas they are the same arch, just different bit, unless something hasn’t been ported across, but that is unlikely, I think we would just need a confirmation from touhidurrr to close this issue, hopefully it works 😃. (As above, most probably the upgrade toLWJGL 3that fixed it.)I’m back from trawling through the internet, and it looks like the problem is with
GDX’s building of native dependency binaries, but since you are upgrading toLWJGL 3they seem to have fixed binaries forLWJGLandOpenALforLWJGL 3on ARM devices, so I’ll rebuild and/or test the prebuilt.jarafter you merge/after you release. Hopefully should fix this and #5022. 🤞 @touhidurrr you may want to test this as well.