27

I am developing a GTK# mono application under openSuse, but I am interested in deploying it for all three platforms (Windows 7, Snow Leopard and as many Linux distributions as I can test on).

Deploying on Linux is not a problem as GTK# comes with the mono libraries, but for Windows I would not like to force the users to install GTK#. Is there a way to embed GTK# in the application, or at least integrate its installation with the installation of my program?

3
  • 1
    you will need to re-distribute gtk+ and gtk-sharp with your installer, gimp does the same thing (since they wrote gtk it isn't a surprise) Commented Jun 25, 2011 at 7:40
  • 1
    I thought that this would be one solution. How should I go about doing so? Commented Jun 26, 2011 at 16:31
  • Is there a specific reason you can't have your users install the gtk# libraries? It's general practice for any application that relies on shared libraries. Commented Sep 14, 2011 at 23:12

1 Answer 1

26

You may deploy GTK# applications without forcing users to install GTK# for .NET on Windows in a number of ways.

  1. You may embed the entire Mono runtime (19 MB overhead) into your Application. Then there won't be any dependencies, your users won't even need to install .NET or MONO. Here's a Guide (I think Banshee uses this).

  2. You may copy all the GTK# assemblies into your program directory. It isn't recommended however because you may run into a lot of problems if the user has another version of the Gtk runtime installed. (Yes GTK+ also needs a runtime).

  3. You may integrate the GTK# installer with the Windows Installer of your application. (Then your users will be able to install both with a single click, no forcing). Many Installer programs can do this.

  4. You may use a Package Management System.

  5. You may use Deployment Management / Dependency Management Software, but this is expensive since all the good ones are propriety.

Though these workarounds can save trouble for your users, in the long run I recommend option 3. It may prove worthwhile to have your users install GTK# because other workarounds may ultimately give more inconvenience to your users than a simple extra installation.

Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.