Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

Anyone Get an aarch64 Build Working?

A topic by andymandias created Jan 31, 2024 Views: 487 Replies: 7
Viewing posts 1 to 4

I am clueless wrt .NET, so I'm not sure how feasible an aarch64 build is.  Attempting to use the .NET SDK available via DNF I get:

18:30:48 | andymandias@xvx-016rn:~/D/C/Celeste64 > dotnet --version
8.0.101
18:35:01 | andymandias@xvx-016rn:~/D/C/Celeste64 > dotnet restore
  Determining projects to restore...
  All projects are up-to-date for restore.
18:35:04 | andymandias@xvx-016rn:~/D/C/Celeste64 > dotnet run
Celeste 64 v.1.0.1
Foster: v0.1.14
Platform: Fedora Linux Asahi Remix 39 (Thirty Nine) (Arm64)
Framework: .NET 8.0.1
System.DllNotFoundException: Unable to load shared library 'FosterPlatform' or one of its dependencies. In order to help diagnose loading problems, consider using a tool like strace. If you're using glibc, consider setting the LD_DEBUG environment variable: 
/usr/lib64/dotnet/shared/Microsoft.NETCore.App/8.0.1/FosterPlatform.so: cannot open shared object file: No such file or directory /home/andymandias/Developer/Celeste/Celeste64/bin/Debug/net8.0/FosterPlatform.so: cannot open shared object file: No such file or directory /usr/lib64/dotnet/shared/Microsoft.NETCore.App/8.0.1/libFosterPlatform.so: cannot open shared object file: No such file or directory /home/andymandias/Developer/Celeste/Celeste64/bin/Debug/net8.0/libFosterPlatform.so: cannot open shared object file: No such file or directory /usr/lib64/dotnet/shared/Microsoft.NETCore.App/8.0.1/FosterPlatform: cannot open shared object file: No such file or directory /home/andymandias/Developer/Celeste/Celeste64/bin/Debug/net8.0/FosterPlatform: cannot open shared object file: No such file or directory /usr/lib64/dotnet/shared/Microsoft.NETCore.App/8.0.1/libFosterPlatform: cannot open shared object file: No such file or directory /home/andymandias/Developer/Celeste/Celeste64/bin/Debug/net8.0/libFosterPlatform: cannot open shared object file: No such file or directory    at Foster.Framework.Platform.FosterStartup(FosterDesc desc)    at Foster.Framework.App.Run(String applicationName, Int32 width, Int32 height, Boolean fullscreen)    at Foster.Framework.App.Run[T](String applicationName, Int32 width, Int32 height, Boolean fullscreen)    at Celeste64.Program.Main(String[] args) in /home/andymandias/Developer/Celeste/Celeste64/Source/Program.cs:line 25

I'm hoping this is a simple issue for someone who is familiar with the .NET build system.
(1 edit) (+1)

i think foster (the engine) is mostly c, youd need to compile that seperately and put the libs in the places its expecting.


https://github.com/FosterFramework/Foster/tree/main/Platform

peep this, if you have trouble i can help debug later.

(1 edit)

Thank you!  For some reason I thought Foster was part of the Celeste64 build.
Building Foster, placing it where Celeste64 is looking for it, then downloading the FMOD libraries from

https://www.fmod.com/download
FMOD Engine > Linux;  requires an account but the account is free iirc

and placing those where Celeste64 is looking for them, and it works via dotnet run!  (Or at least it launches, I will have to wait a bit longer to try playing it.)

Are you per chance trying to run this on a raspberry pi 4 or 5? I'd love to get it running there. 

(+1)

the above troubleshooting steps should let it run on pi, are you having any other issues?

Oh, I didn't mean to say I was having trouble. I only saw this when I woke up and will check later when I'm off work. Thank you! 

I'm running it on a MacBook Pro running Asahi Fedora Remix.  I would assume the same steps would work with a raspberry pi 4/5, but I don't have any personal experience with it.

(3 edits)

Just want to confirm that it plays well (not just launches well).  Thanks again Anumania!

Edit (x2): Official support is here :)  Removing a now-dead link to no-longer-necessary explicit build steps.