space-wizards / SS14.Launcher

Launcher for Space Station 14.
https://spacestation14.io
MIT License
34 stars 61 forks source link

Client crashes on startup because of missing OpenAL library (Ubuntu LTS) #106

Open samld opened 1 year ago

samld commented 1 year ago

Client crashes on startup after the splash screen is shown.

Here is the client.stderr.log file's content:

Unhandled exception. System.DllNotFoundException: Could not load the dll 'libopenal.so.1' (this load is intercepted, specified in DllImport as 'AL').
   at OpenTK.Audio.OpenAL.ALLoader.ImportResolver(String libraryName, Assembly assembly, Nullable`1 searchPath)
   at System.Runtime.InteropServices.NativeLibrary.LoadLibraryCallbackStub(String libraryName, Assembly assembly, Boolean hasDllImportSearchPathFlags, UInt32 dllImportSearchPathFlags)
   at OpenTK.Audio.OpenAL.ALC.OpenDevice(String devicename)
   at Robust.Client.Graphics.Audio.ClydeAudio._audioOpenDevice() in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Client/Graphics/Audio/ClydeAudio.cs:line 99
   at Robust.Client.Graphics.Audio.ClydeAudio._initializeAudio() in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Client/Graphics/Audio/ClydeAudio.cs:line 45
   at Robust.Client.Graphics.Audio.ClydeAudio.InitializePostWindowing() in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Client/Graphics/Audio/ClydeAudio.IoC.cs:line 33
   at Robust.Client.Graphics.Audio.FallbackProxyClydeAudio.InitializePostWindowing() in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Client/Graphics/Audio/FallbackProxyClydeAudio.cs:line 27
   at Robust.Client.GameController.StartupContinue(DisplayMode displayMode) in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Client/GameController/GameController.cs:line 114
   at Robust.Client.GameController.ContinueStartupAndLoop(DisplayMode mode) in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Client/GameController/GameController.Standalone.cs:line 127
   at Robust.Client.GameController.GameThreadMain(DisplayMode mode) in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Client/GameController/GameController.Standalone.cs:line 119
   at Robust.Client.GameController.<>c__DisplayClass100_0.<Run>b__0() in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Client/GameController/GameController.Standalone.cs:line 86
ElectroJr commented 1 year ago

I think this might just be some known issue on some linux distros where you have to install/configure openal. E.g., see space-wizards/space-station-14/issues/19671.

Though IMO the launcher should probably check for openal and give a user friendly error message if its missing.

PJB3005 commented 1 year ago

We should be shipping OpenAL instead, I just need to un-spaghettify our native compilation stack.