Ask Your Question
1

OpenRA wouldn’t play on Fedora 23

asked 2015-12-27 18:43:05 -0500

Aeyoun gravatar image

OpenRA is an open-source game in the style of Command & Conquer written in Mono. RPM packages for Fedora are available.

Anyhow, it might not run on Fedora 23. The game will simply quit after launching and your exception.log will show the following message:

Operating System: Linux (Unix 4.2.7.300)
Runtime Version: Mono 4.0.5 (Stable 4.0.5.1/1d8d582 Thu Nov 12 18:01:21 UTC 2015) CLR 4.0.30319.17020
Exception of type `System.TypeInitializationException`: An exception was thrown by the type initializer for OpenRA.Support.PerfHistory
Inner Exception of type `System.TypeInitializationException`: An exception was thrown by the type initializer for System.Drawing.KnownColors
  Inner Exception of type `System.TypeInitializationException`: An exception was thrown by the type initializer for System.Drawing.GDIPlus
    Inner Exception of type `System.DllNotFoundException`: libgdiplus.so
      TypeName=``
        at (wrapper managed-to-native) System.Drawing.GDIPlus:GdiplusStartup (ulong&,System.Drawing.GdiplusStartupInput&,System.Drawing.GdiplusStartupOutput&)
  at System.Drawing.GDIPlus..cctor () [0x000cc] in /builddir/build/BUILD/mono-4.0.5/mcs/class/System.Drawing/System.Drawing/gdipFunctions.cs:119 
      at System.Drawing.KnownColors..cctor () [0x0001a] in /builddir/build/BUILD/mono-4.0.5/mcs/class/System.Drawing/System.Drawing/KnownColors.cs:215 
    at System.Drawing.Color.get_Red () [0x00000] in /builddir/build/BUILD/mono-4.0.5/mcs/class/System.Drawing/System.Drawing/Color.cs:879 
  at OpenRA.Support.PerfHistory..cctor () [0x00000] in <filename unknown>:0 
  at OpenRA.Game.Initialize (OpenRA.Arguments args) [0x00000] in <filename unknown>:0 
  at OpenRA.Program.Run (System.String[] args) [0x00000] in <filename unknown>:0 
  at OpenRA.Program.Main (System.String[] args) [0x00000] in <filename unknown>:0
edit retag flag offensive close merge delete

1 Answer

Sort by » oldest newest most voted
1

answered 2015-12-27 18:45:57 -0500

Aeyoun gravatar image

To fix this problem, open /etc/mono/config for editing as root and locate these lines near the bottom:

<dllmap dll="gdiplus" target="libgdiplus.so" os="!windows"/>
<dllmap dll="gdiplus.dll" target="libgdiplus.so"  os="!windows"/>
<dllmap dll="gdi32" target="libgdiplus.so" os="!windows"/>
<dllmap dll="gdi32.dll" target="libgdiplus.so" os="!windows"/>

Replace the above with the following lines:

<dllmap dll="gdiplus" target="libgdiplus.so.0" os="!windows"/>
<dllmap dll="gdiplus.dll" target="libgdiplus.so.0"  os="!windows"/>
<dllmap dll="gdi32" target="libgdiplus.so.0" os="!windows"/>
<dllmap dll="gdi32.dll" target="libgdiplus.so.0" os="!windows"/>

Note that the only change is appending “.0” to the target paths. The libgdiplus package should already have been installed but the library name mappings are off in Fedora 23.

edit flag offensive delete link more

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower

Stats

Asked: 2015-12-27 18:43:05 -0500

Seen: 204 times

Last updated: Dec 27 '15