OpenRA / ra2

A Red Alert 2 mod for the OpenRA game engine
GNU General Public License v3.0
970 stars 160 forks source link

SIGILL crash upon running the game for the first time #717

Closed karimhamdanali closed 4 years ago

karimhamdanali commented 4 years ago

Hi there,

Thanks for making this mod available. Much appreciated!

I tried installing it on macOS by following the instructions on the wiki. Although the installation was successful, the app crashed upon running it from the command line (via ./launch-game.sh). I was wondering if you may have any pointers to resolve this runtime error? I installed the mod on macOS 10.15.4 and my machine runs mono 6.8.0.105 (installed via homebrew). The full crash report is below (redacted some personal paths).

Thanks!

=================================================================
    Native Crash Reporting
=================================================================
Got a SIGILL while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries 
used by your application.
=================================================================

=================================================================
    Native stacktrace:
=================================================================
    0x101610d64 - /usr/local/bin/mono : mono_dump_native_crash_info
    0x1015b8926 - /usr/local/bin/mono : mono_handle_native_crash
    0x101537233 - /usr/local/bin/mono : mono_sigill_signal_handler
    0x7fff704745fd - /usr/lib/system/libsystem_platform.dylib : _sigtramp
    0x7fff362d2142 - /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation : -[__NSDictionaryM objectForKey:]
    0x1065a04fe - ~/ra2/engine/libSDL2.dylib : -[SDLOpenGLContext setWindow:]
    0x1065a12b7 - ~/ra2/engine/libSDL2.dylib : Cocoa_GL_MakeCurrent
    0x1065a0faa - ~/ra2/engine/libSDL2.dylib : Cocoa_GL_CreateContext
    0x106508161 - ~/ra2/engine/libSDL2.dylib : SDL_GL_CreateContext_REAL
    0x10641d2a4 - ~/ra2/engine/libSDL2.dylib : SDL_GL_CreateContext
    0x10ae2a28b - Unknown
    0x1035fe2d2 - /usr/local/Cellar/mono/6.8.0.105/lib/mono/4.5/mscorlib.dll.dylib : System_Threading_ThreadHelper_ThreadStart_Context_object
    0x1035fba33 - /usr/local/Cellar/mono/6.8.0.105/lib/mono/4.5/mscorlib.dll.dylib : System_Threading_ExecutionContext_Run_System_Threading_ExecutionContext_System_Threading_ContextCallback_object_bool
    0x10153a6e9 - /usr/local/bin/mono : mono_jit_runtime_invoke
    0x1016ee5dc - /usr/local/bin/mono : do_runtime_invoke
    0x1016f00c7 - /usr/local/bin/mono : mono_runtime_delegate_try_invoke
    0x10170f78a - /usr/local/bin/mono : start_wrapper_internal
    0x10170f552 - /usr/local/bin/mono : start_wrapper
    0x7fff70480109 - /usr/lib/system/libsystem_pthread.dylib : _pthread_start
    0x7fff7047bb8b - /usr/lib/system/libsystem_pthread.dylib : thread_start

=================================================================
    Telemetry Dumper:
=================================================================
Pkilling 0x108a6adc0 from 0x70000e5bd000
Pkilling 0x70000dd96000 from 0x70000e5bd000
Entering thread summarizer pause from 0x70000e5bd000
Finished thread summarizer pause from 0x70000e5bd000.

Waiting for dumping threads to resume

=================================================================
    External Debugger Dump:
=================================================================

=================================================================
    Basic Fault Address Reporting
=================================================================
Memory around native instruction pointer (0x7fff3395665c):0x7fff3395664c  77 00 0f 0b 48 8d 3d d3 65 7f 00 e8 6e f1 77 00  w...H.=.e...n.w.
0x7fff3395665c  0f 0b 49 89 c6 eb 13 48 89 c7 e8 cf f6 77 00 b3  ..I....H.....w..
0x7fff3395666c  01 eb 9a 49 89 c6 84 db 74 05 e8 e3 f6 77 00 4c  ...I....t....w.L
0x7fff3395667c  89 f7 e8 69 f0 77 00 0f 0b e8 b2 f7 77 00 55 48  ...i.w......w.UH

=================================================================
    Managed Stacktrace:
=================================================================
      at <unknown> <0xffffffff>
      at SDL2.SDL:SDL_GL_CreateContext <0x000aa>
      at OpenRA.Platforms.Default.Sdl2GraphicsContext:InitializeOpenGL <0x00062>
      at OpenRA.Platforms.Default.ThreadedGraphicsContext:RenderThread <0x00192>
      at System.Threading.ThreadHelper:ThreadStart_Context <0x000e1>
      at System.Threading.ExecutionContext:RunInternal <0x00191>
      at System.Threading.ExecutionContext:Run <0x00042>
      at System.Threading.ExecutionContext:Run <0x00063>
      at System.Threading.ThreadHelper:ThreadStart <0x0006a>
      at <Module>:runtime_invoke_void__this___object <0x000c3>
=================================================================
./launch-game.sh: line 41: 35416 Abort trap: 6           mono OpenRA.Game.exe Engine.LaunchPath="${TEMPLATE_LAUNCHER}" "Engine.ModSearchPaths=${MOD_SEARCH_PATHS}" Game.Mod="${MOD_ID}" "$@"
karimhamdanali commented 4 years ago

It seems that the build crashes with mono. However, after I downloaded and installed Visual Studio for Mac from Microsoft's website, then did a make all, the game opened properly without crashing.

Perhaps Visual Studio installed more runtime libraries than mono did? I'm not sure to be honest.

abcdefg30 commented 4 years ago

The crash does look like it is an issue with mono. It might be because it was installed via homebrew. (It is recommended to install from https://www.mono-project.com/download/stable/#download-mac.)

Anyway, glad to hear that you managed to resolve this crash/issue.