Dust: An Elysian Tail

Dust: An Elysian Tail

통계 보기:
colinnkeenan 2013년 12월 28일 오후 10시 56분
SIGSEGV error trying to run on Arch Linux, Intel HD 4000 graphics.
When I try to run Dust: An Elysian Tale in Steam on Arch Linux, I get the following error:

================================================================= Got a SIGSEGV while executing native code. This usually indicates a fatal error in the mono runtime or one of the native libraries used by your application. ================================================================= /home/colin/.local/share/Steam/SteamApps/common/Dust An Elysian Tail/./DustAET: line 23: 23278 Aborted (core dumped) ./DustAET.bin.x86_64 Game removed: AppID 236090 "Dust: An Elysian Tail", ProcID 23278

I didn't have mono installed, so I installed it, but got the same error. So then I tried installing mono-addins and mono-basic, but I got the same error. So, I tried upgrading from mono to mono2. I still get the same error. I don't even know if this game uses mono, but the error message doesn't tell me what library I'm missing.

There doesn't seem to be a Support sub-thread for this game, so I'm posting this question in General Discussions.

Here is a pastebin link showing dust.log from "strace -o dust.log steam steam://rungameid/236090"
http://pastebin.com/iF2Xz7xj.

Here is another pastebin link showing all the results from "strace -eopen steam steam://rungameid/236090"
http://pastebin.com/zjtYcwAR

Edit:
I have just tried running it after disabling Steam Community overlay. Now the game doesn't even try to load and just instantly provides the following error:

System.DllNotFoundException: opengl32.dll at (wrapper managed-to-native) OpenTK.Graphics.OpenGL.GL/Core:GenFramebuffers (int,uint*) at OpenTK.Graphics.OpenGL.GL.GenFramebuffers (Int32 n, System.Int32& framebuffers) [0x00000] in <filename unknown>:0 at Microsoft.Xna.Framework.SDL2_GameWindow..ctor () [0x00000] in <filename unknown>:0 at Microsoft.Xna.Framework.SDL2_GamePlatform..ctor (Microsoft.Xna.Framework.Game game) [0x00000] in <filename unknown>:0 at Microsoft.Xna.Framework.GamePlatform.Create (Microsoft.Xna.Framework.Game game) [0x00000] in <filename unknown>:0 at Microsoft.Xna.Framework.Game..ctor () [0x00000] in <filename unknown>:0 at Dust.Game1..ctor () [0x00000] in <filename unknown>:0 at Dust.Program.Main (System.String[] args) [0x00000] in <filename unknown>:0
colinnkeenan 님이 마지막으로 수정; 2013년 12월 31일 오전 11시 08분
< >
전체 댓글 9개 중 1~9개 표시 중
flibitijibibo  [개발자] 2013년 12월 31일 오전 9시 25분 
This suggests that your graphics hardware does not have ARB_framebuffer_object support, which is required to run Dust. This seems to line up with some of the output as well, where it fails to use EXT_swap_control_tear VSync.

For the original crash, it fails on SDL_InitSubSystem() for gamepad input, which typically indicates a problem with the system X setup.

If the hardware's capable (the HD 4000 should be?), you're going to want to look at your X system libs and drivers for this.
flibitijibibo 님이 마지막으로 수정; 2013년 12월 31일 오전 9시 28분
colinnkeenan 2013년 12월 31일 오전 10시 05분 
As far as I can tell, the missing library, opengl32.dll, is only used in wine. If it is required for this linux port, shouldn't it be included with the game? I will see what happens if I sym-link my wine opengl32.dll to this game's library folder.
colinnkeenan 2013년 12월 31일 오전 10시 15분 
Putting a link to opengl32.dll didn't work. I think the problem is I don't have OpenTK installed, which is a wrapper for mono/.Net. I'm installing it now. If that fixes it - it should be made a dependency.
flibitijibibo  [개발자] 2013년 12월 31일 오전 10시 36분 
We provide all of the dependencies with the game. The opengl32.dll reference is referring not to a missing library, but a missing GL extension. As I said before, your current setup does not support ARB_framebuffer_object. You need to install/update the latest driver to fix this for the HD 4000.
colinnkeenan 2013년 12월 31일 오전 10시 42분 
I have the latest drivers available for Arch Linux, which should be the latest available for any linux distro. Here are my drivers:
intel-dri-git 10.1.0_devel.60267-1
lib32-intel-dri 10.0.1-1
libva-intel-driver 1.2.2-1
xf86-video-intel 2.21.15-2

As you can see, for 3D acceleration, I'm even pulling from git. Maybe this game doesn't run on HD 4000 graphics under linux?
flibitijibibo  [개발자] 2013년 12월 31일 오전 10시 44분 
To my understanding, all Intel hardware from the GMA945 and up should support the necessary extensions. I would defer to someone more familiar with Arch's X11 and GL driver support, as this seems to point to something very specific to that distro.
colinnkeenan 2013년 12월 31일 오전 11시 05분 
I don't think my problem is missing ARB_framebuffer_object extension. Please take a look at this:

colin /$ glewinfo | grep ARB_framebuffer_object GL_ARB_framebuffer_object: OK
colinnkeenan 님이 마지막으로 수정; 2013년 12월 31일 오전 11시 08분
colinnkeenan 2013년 12월 31일 오후 12시 14분 
OK Now, This is really strange. I just tried double-clicking on DustAET.bin.x86_64 instead of running it through Steam, and it worked! It launches and plays fine, without running Steam.
colinnkeenan 2013년 12월 31일 오후 12시 55분 
I think the reason double-clicking directly on DustAET.bin.x86_64 worked is that I had already installed MonoGame in trying to get it to work in Steam. But, Steam is using it's own libraries and those bundled with the game instead of MonoGame and other libraries that I installed directly in Arch.

I tried it in Steam again and it still doesn't work.

If anyone else wants to run it outside of Steam, here's what I installed:

mono
openal
sdl2 (already had it)
opentk (available in AUR)
monogame (available in AUR)

I created a .desktop file to run this from my menu. This is the .desktop file if anyone else needs it:

colin ~$ cat /home/colin/.local/share/applications/DustAET.desktop [Desktop Entry] Name=Dust: An Elysian Tale Comment=Supposed to work on Steam, but doesn't Exec='/home/colin/.local/share/Steam/SteamApps/common/Dust An Elysian Tail/DustAET.bin.x86_64' Icon=/home/colin/.local/share/Steam/SteamApps/common/Dust An Elysian Tail/Dust An Elysian Tail.bmp Terminal=false Type=Application Categories=Game;

Of course, anyone using this .desktop file would have to correct the paths.
colinnkeenan 님이 마지막으로 수정; 2013년 12월 31일 오후 1시 22분
< >
전체 댓글 9개 중 1~9개 표시 중
페이지당 표시 개수: 1530 50

게시된 날짜: 2013년 12월 28일 오후 10시 56분
게시글: 9