SprigFern: Futoshiki puzzle solver

Running SprigFern Solver

Running SprigFern requires you to have a platform capable of running .NET Common Language Runtime, as well as the GTK# run-time libraries. Although notionally a .NET based program, SprigFern was developed using MonoDevelop under Linux, so there should be no problems running it on a non-Windows operating system.

Running using .NET

SprigFern requires .NET v4, which for Windows7 requires installation of the .NET run-time. Windows8 includes .NET v4 as standard, but SprigFern has not been tested on this operating system. SprigFern also requires the GTK# for .NET run-time libraries from Xamarin.

Running using Mono on Windows

As an alternative to .NET, Windows users can install Mono for Windows. This may be favourable in circumstances (e.g. no administrator privileges) where installation of the .NET v4 run-time is undesirable or impossible. The only complication is that Mono will not register itself as the execution environment for .NET binaries in the same way the Java run-time is auto-associated with .jar files. Therefore you need to either drag-and-drop the SprigFern binary onto mono.exe (or a shortcut to it), or specify SprigFern as a command-line parameter for Mono.

Running on Ubuntu 12.04

Under Ubuntu 12.04 you need to install the mono-complete package, as a bare-bones Mono install does not include libraries required to run SprigFern. If you only have the basic libraries installed, you will likely get errors like the following:

Unhandled Exception: System.IO.FileNotFoundException: Could not load file or assembly 'Mono.Posix, Version=4.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756' or one of its dependencies.
File name: 'Mono.Posix, Version=4.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756'
  at MainWindow..ctor () [0x00000] in :0
  at SprigFern.MainClass.Main (System.String[] args) [0x00000] in :0
[ERROR] FATAL UNHANDLED EXCEPTION: System.IO.FileNotFoundException: Could not load file or assembly 'Mono.Posix, Version=4.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756' or one of its dependencies.
File name: 'Mono.Posix, Version=4.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756'
  at MainWindow..ctor () [0x00000] in :0
  at SprigFern.MainClass.Main (System.String[] args) [0x00000] in :0

Other versions of Ubuntu should be much the same. Although installing mono-complete is over-kill, it is no major issue given the size of disks and speed of internet connections these days.