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".
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".
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
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
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
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
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
posted by uandt at 8:31 AM on August 3, 2007
And some games:
GL Tron
Frozen Bubbles
BZ Flag
…to name a few.
posted by adamrice at 8:46 AM on August 3, 2007
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
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
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
posted by Blazecock Pileon at 10:04 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
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
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
posted by caution live frogs at 12:03 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
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
This thread is closed to new comments.
posted by uaudio at 8:06 AM on August 3, 2007