jaytirth wrote: > What are advantages of using Winelib to port instead of rewriting it entirely in Java? Both are poor choices. Wine isn't a native platform, always in a state of flux. But will give you best performance. Use it if you don't afraid to fix things all the time and need direct access to native API. Java - a bloated resource hog, driven by a company that doesn't care about FOSS but own profits. Anything written in java will run at least 10 times slower then C code. Use it if your app have to run on anything as-is. And you don't care about performance, or specific O/S features. Or if you want to load all available CPU cores with something related to your program and don't know how to do it right with threads. If you really want to port an application from Wintel to *NIX - use cross-platform toolkits, such as QT or GTK. It's easier to get *NIX program ported to Wintel with those toolkits then other way around. Write non-gui parts for POSIX it will work on Windows with few extra libraries from Cygwin.