

Writing Windows desktop applications on Linux? - rmc

How can I make a programme that runs on Windows, but is developed on Linux?<p>I have an idea for a side project. It's a programme that would make certain kinds of images. It's something I <i>could</i> do on a website, and in fact I will be launching a web version. However I think it might also work, and might work better as a desktop application.<p>Most of my market is going to be mundane home users, everyone's sterotypical mother. Windows is the most popular OS here. I also don't want to complicate things by requiring software that the average user can't easily install.<p>However I run Ubuntu, and that ain't changing any time soon. So how can I develop it on Linux and have it run on windows without the user having to install a lot of stuff?<p>Java? What about native widgets? Is there anything I can do with Mono or .net? Or is this pretty impossible?
======
duncanj
You can write using Winelib (<http://www.winehq.org/winelib>), using the
windows API and mingw (<http://www.mingw.org/wiki/LinuxCrossMinGW>). It's not
really the cheapest option in terms of development investment, but it works.
You will be able to test the software on linux and windows.

Can't say I like this option, though. Win32 is awful tedious without some
abstraction.

~~~
rmc
Erk, wine and using the windows library seems like a headache...

------
d_d
WxWidgets. (I'm guessing here that the biggest thing is the UI.) Cross
platform, and likely with bindings for your favourite language, and a native
look & feel. Make sure that the rest of your code is platform independent, and
you're done. Also recommended: use VirtualBox to test under Win/OSX.

If you're writing in python, you probably don't even have to worry about it.
(Just use the os.path module properly.) I've done this myself and it's worked
a treat.

~~~
rmc
I like this idea, and I like python. Can I rely on non-technical users having
python and wxwidgets installed? or is there some way to bundle everything
together?

~~~
d_d
Well, I know it's been 27 days, but you should be able to bundle everything
using py2exe. (<http://www.py2exe.org/>)

------
veeti
Consider using Qt - it's cross platform and provides a native look & feel
(just like wxWidgets does, but IMO with a much cleaner API).

There's bindings for Python, etc.

