HN2new | past | comments | ask | show | jobs | submitlogin
Writing Windows desktop applications on Linux?
4 points by rmc on April 1, 2010 | hide | past | favorite | 6 comments
How can I make a programme that runs on Windows, but is developed on Linux?

I have an idea for a side project. It's a programme that would make certain kinds of images. It's something I could 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.

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.

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?

Java? What about native widgets? Is there anything I can do with Mono or .net? Or is this pretty impossible?



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.


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


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.


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?


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


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.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: