Question

I want to port my C# WinForms application to be usable both with Windows and Linux. I have some experience with Java and more experience with Python but I don't really like the first and I'm concerned with the second (I mean the obfuscation, need to install Python on the target PC, etc.) so I've chosen to use Vala and GTK3 toolkit... it is created mainly for making GNOME applications but I've read that it's multiplatform and is compiled fully to C also with all the dependences needed for running the software - but is it right? I mean: would I meet any limitations while creating my application on Linux? I don't want to finish it and then to discover it can't be run on Windows because I've used some GNOME library...

Was it helpful?

Solution

There are a lot of GTK applications that currently work on Windows with no problem.

For example:

  • GIMP (raster graphics tool - the application for which GTK was built initially)
  • Inkscape (vector graphics tool)
  • Geany (Text editor)
  • Pidgin

Vala apps will work anywhere a GTK apps will. Can't name a Vala app i've seen running on windows but i'll take an interest in this and get back to you.

By the way there are two (maybe several) approaches to writing the app in Vala/GTK, for example including the entire GTK library into the app or not. Geany offers 2 different binary installers meant to allow you to choose if you already have GTK on your windows download a lighter geany-only instaler, if not download the full installer which incorporates its version of GTK.

Here's a site and a tool that will help you with configuring your vala compiler to output windows executables.

I'm not sure if you can use all the tools that Vala needs on Windows. You may have to develop on a linux box.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top