Bridging the OSS cross-platform gap.
August 3, 2007 8:01 AM   Subscribe

Firefox seems like the odd man out, being a GUI application that is not just open-source but also compiles and runs on Windows, Mac OS and Linux -- consistently and equally well. What other GUI-based applications that are like this; being open-source and that support all three platforms natively?

Note that I'm curious about OSS GUI apps like Firefox that compile into multiple platform-specific binaries that can run in a stock install of the OS. I realize there are ways around this -- X11 implementations and Cygwin for Windows, emulators like WINE for Linux and Mac OS, web applications that require a web server and separate browser, or VMs like VMWare and Parallels that assist with cross-platform operation. I'm looking for apps that have the magic "built-in".
posted by I EAT TAPAS to Technology (20 answers total) 3 users marked this as a favorite
 
Blender
posted by uaudio at 8:06 AM on August 3, 2007


VLC
posted by RichardP at 8:12 AM on August 3, 2007


OpenOffice
posted by handee at 8:14 AM on August 3, 2007


Gvim (maybe that's a little geeky, actually, but it's one of the first things I install on a new machine).
posted by handee at 8:14 AM on August 3, 2007


Thunderbird, of course, like Firefox. They're both based on XUL, a general cross platform application development system. I keep hoping people will build more XUL apps.
posted by Nelson at 8:21 AM on August 3, 2007


Codeblocks, which will also help you cross compile your own programs for all three targets (with appropriate compilers). Gimp is available for all three. Really, there's a huge number of programs like this. If you count Java apps, there's too many to count.
posted by IronLizard at 8:24 AM on August 3, 2007


This has been the standard for open source Internet clients, since the early days. Granted, those weren't GUI-based, but they did compile just about anywhere: pine, elm, mutt, tin, trn, nn, ircII all come to mind here.

The age of the GUI internet client started with xgopher and Mosaic, which like firefox, compiled into standalone static binaries for Unix, Mac, Win32, etc.

So, what other GUI clients are there now?

Ones that serve more or less the same function, including: the Pan newsreader, The Sylpheed mail client. Pidgin (formerly Gaim) chat client. The GIMP. Abiword. (and many more).

Most of those use the GTK toolkit, which means each platform compiles its own, unique binary. GTK has made cross-platform GUI development much easier. And the windows port/DLL has come a long way -- many clean programs written for Unix will compile into windows-native binaries, using Mingw and other toolchains at compile-time (you don't need Mingw to run a program compiled using it -- this is different than cygwin)

There's also the Java-based (azureus) and XUL-based (democracy) efforts that are even more inherently cross-platform than the GTK+C+GlibC clients above -- but it's unclear whether this really counts as cross-platform to anyone but the user.
posted by toxic at 8:29 AM on August 3, 2007


KDE 4 is supposed to run natively on most platforms. Has most of the desktop apps you'll ever need
posted by uandt at 8:31 AM on August 3, 2007


Emacs.
posted by grouse at 8:31 AM on August 3, 2007


Juice
posted by tracert at 8:43 AM on August 3, 2007 [1 favorite]


And some games:

GL Tron
Frozen Bubbles
BZ Flag

…to name a few.
posted by adamrice at 8:46 AM on August 3, 2007


Cross platform KDE? That's pretty cool.
posted by boo_radley at 8:59 AM on August 3, 2007


Any application written using the wxWidgets GUI toolkit can, if written correctly, compile on the three major types of operating systems as well as BeOS and handhelds - Audacity uses it, for example, and I believe VLC does as well.

The nice thing about using wxWidgets or Qt4 (which is the only reason KDE applications may ever be cross-platform) is that the toolkits use native controls, unlike XUL, as well as include useful functionality that isn't related to the GUI to make cross-platform development easier, unlike using a hand-rolled solution.
posted by cmonkey at 9:07 AM on August 3, 2007


Eclipse is an example for Linux and OS X. You would need to install a JVM on Windows.
posted by Blazecock Pileon at 10:04 AM on August 3, 2007


Azureus 2.5, the non-bloatware version.
posted by Myself at 10:43 AM on August 3, 2007


Songbird is an XUL-based music player/browser for Windows/Mac/Linux.
posted by mbrubeck at 10:56 AM on August 3, 2007


As said above, anything based on Qt, WxWidgets, GTK+, or the Mozilla app framework, which is what Firefox uses. Note that of those, Qt is only opensource for GPL projects, the Moz app framework is usually considered bloated, and GTK+ itself doesn't provide for much more than windowing.

In addition, MainWin provides libraries for porting MFC apps to *nix. IIRC Softiamge|XSI runs on that, or at least used to. I don't know what they do for OS-X.
posted by devilsbrigade at 10:56 AM on August 3, 2007


The next version of FileZilla FTP client (ver. 3, currently in beta) is cross-platform.
posted by caution live frogs at 12:03 PM on August 3, 2007


OpenTTD
posted by SpecialK at 4:22 PM on August 3, 2007


"Stellarium is a free open source planetarium for your computer."

Not really much of an application, but it's so awesome at what it does. Really beautiful.
posted by bigdave at 5:47 PM on August 3, 2007


« Older How to take apart a couch   |   My Core 2 Duo is running at 1/4 speed!?! Newer »
This thread is closed to new comments.