Best Multiplatform IDE?

Started by
27 comments, last by el junk 11 years, 1 month ago

This is probably a repost, so sorry about that.

Right now I'm trying to find the best multiplatform solution and I keep getting a bunch of mixed answers from Google searches. I've decided to download and develop on Ubuntu so I can test the multiplatform capability between the Ubuntu half of my computer and the Windows half, that way I'll pretty much know that my game runs on at least two different OS. So I've narrowed it down to a couple Linux IDEs:

*Code::Blocks, which I've tried before but didn't really like... not sure how good it really is

*Eclipse (at least the C++ specific version), but I hear it can become pretty slow since its Java based (same for NetBeans)

*Qt Creator, which I've heard a lot of good things about but it makes me nervous that its based around a specific SDK

I just wanna make sure from the get go that my IDE won't leave me hanging somewhere later close to release. I narrowed it down to these three because they all had relatively good things said about them and each seems pretty close to having a working version of Clang ready for them which seems invaluable for the debugging process. Is there something I'm missing, or should I just suck it up and straight up use vim with the normal GCC compiler and just do everything by hand because I'm so paranoid XD

Thanks for your help.

AniMerrill, a.k.a. Ethan Merrill

Advertisement

You don't really need a multiplatform IDE, you could just pick the CMake build system which can generate project files for Visual Studio, Makefiles and a bunch of other editors and build systems. Qt Creator can even read CMakes directly. And you can definitely use Qt Creator for non-Qt stuff.

PS: emacs rocks.

You don't really need a multiplatform IDE, you could just pick the CMake build system which can generate project files for Visual Studio, Makefiles and a bunch of other editors and build systems. Qt Creator can even read CMakes directly. And you can definitely use Qt Creator for non-Qt stuff.

PS: emacs rocks.

Okay that's a little relieving, I might take at least a look at Qt Creator then. I've sort of made a vow to get away from Microsoft products, because I'd really like to get into and support the good open source tools out there because... realistically indie gaming would be very lost without them.

What's emacs like? I've heard it compared to vim (which I know little about), is it basically the same thing? Like just a text editor but... not?

AniMerrill, a.k.a. Ethan Merrill

It's also a good idea to learn different ways of doing things just to get a broader perspective. Also, spreading your skills over a greater number of technologies makes sense as a security measure/future-proofing.

In that regard, I guess emacs is like vim. Without the hassle of modal editing, and better customization I guess. But it takes time to become fluent in emacs.

What about Slick Edit? As PRO as it gets: http://www.slickedit.com/

What's emacs like? I've heard it compared to vim (which I know little about), is it basically the same thing? Like just a text editor but... not?

Emacs is an OS shell. One of its features is a built-in text editor. You can even get vim mode plugin for the editor, and there are extensions to, for example, run a web server within emacs to test out your server-side code on the fly. It uses a LISP variant as its programming language. Emacs runs everywhere. You need to memorize a bazillion multi-key combaintions (control-meta-alt-butterfly) and function names to use emacs effectively.

Vim is a text editor with enough add-ins and extensions that it can be used as a OS shell. It has a smaller footprint (memory and disk space) than emacs and its programming language is procedural. Vim runs everywhere. The vi interface is modal, you need to fully grok that and memorize a gazillion bizarre keystrokes to use vim effectively.

The difference between something like vim or emacs and an IDE is the IDE is more rigidly structured (which limits its functionality, a mixed blessing) and an IDE tends to use clicky-clicky pictures where vim and emacs use text (which you can often click on). An IDE is generally easier to learn, but like many things that are 'easier' they will limit your full power and make it harder to do the last 10% of the stuff you find you need.

QtCreator is the slickest free multi-platform IDE I've seen in a long time. It's fast and responsive, easy to install and learn, and works the same everywhere I've run it. It even has a vim mode for its text editor.

It's a matter of personal choice. If you truly want a free development environment that feels and works the same on POSIX (Mac OS X, GNU/Linux) and WSA (Microsoft Windows) you should either choose emacs/vim or QtCreator.

Stephen M. Webb
Professional Free Software Developer

*Code::Blocks, which I've tried before but didn't really like... not sure how good it really is

Just out of curiosity, what did you not like about it? Maybe you have encountered some of the more buggy builds.

I have used it for quite a few years for cross-platform development and, compared to the alternatives, I find it more flexible/low-level (you can customize about anything, including its build process) and "light-weight" (always responsive and you can trim any fat/plug-ins).

For beginners, there are IMHO better alternatives, such as QtCreator, which I find it too bloated (do not get upset - just my opinion).

Of course, you have to switch IDE (try out the others) from time to time anyways to form an updated opinion (which I do every few years).

BTW. If you have used CB nightly builds (and you almost have to if you want an updated version), especially those from 4-6 years ago, there are always bound to be some more-or-less buggy builds. If I encounter such buggy build, I just report the bug(s) and step one version down until the next build is released (and usually they have fixed the bug(s) by then).

QtCreator is the slickest free multi-platform IDE I've seen in a long time. It's fast and responsive, easy to install and learn, and works the same everywhere I've run it. It even has a vim mode for its text editor.

It's a matter of personal choice. If you truly want a free development environment that feels and works the same on POSIX (Mac OS X, GNU/Linux) and WSA (Microsoft Windows) you should either choose emacs/vim or QtCreator.

Thank you for this post. I was actually starting to feel punked because I was reading the tutorial that comes with emacs and kinda... under appreciating it I think. I mean, I'm twenty something, so every computer I was old enough to remember using had Microsoft Notepad included so, to me, emacs just seems like a really... bad text editor. I guess instead of reading the basic text editor tutorials I should maybe look up specific stuff, like how to use it to make C++?

Either that or just use Qt Creator since I don't really see how it would hurt me, at least with the main production process which will definitely be the hardest part I imagine. As long as I can eventually port it to the main trinity of OS without much of a headache I think I'll be happy with that.

AniMerrill, a.k.a. Ethan Merrill

Thank you for this post. I was actually starting to feel punked because I was reading the tutorial that comes with emacs and kinda... under appreciating it I think. I mean, I'm twenty something, so every computer I was old enough to remember using had Microsoft Notepad included so, to me, emacs just seems like a really... bad text editor. I guess instead of reading the basic text editor tutorials I should maybe look up specific stuff, like how to use it to make C++?

Can you play Tetris, Snake, etc. in Notepad? Nope, but you can in Emacs (for example, M-x tetris (that is, Escape, press x, then type tetris). Just a small sample of Emacs. If you watch someone who really knows Emacs, it's like watching someone do magic.

Either that or just use Qt Creator since I don't really see how it would hurt me, at least with the main production process which will definitely be the hardest part I imagine. As long as I can eventually port it to the main trinity of OS without much of a headache I think I'll be happy with that.

I'd personally suggest using Qt Creator. Emacs is cool and all, and I use it (in addition to Xcode and Visual Studio), but unless you really want to get into the Linux/GNU/Open source/Command line-type world, you probably won't get as much out of Emacs as you would a more visual/GUI-type IDE, like Qt Creator.
[size=2][ I was ninja'd 71 times before I stopped counting a long time ago ] [ f.k.a. MikeTacular ] [ My Blog ] [ SWFer: Gaplessly looped MP3s in your Flash games ]

*Code::Blocks, which I've tried before but didn't really like... not sure how good it really is

Just out of curiosity, what did you not like about it? Maybe you have encountered some of the more buggy builds.

I have used it for quite a few years for cross-platform development and, compared to the alternatives, I find it more flexible/low-level (you can customize about anything, including its build process) and "light-weight" (always responsive and you can trim any fat/plug-ins).

For beginners, there are IMHO better alternatives, such as QtCreator, which I find it too bloated (do not get upset - just my opinion).

Of course, you have to switch IDE (try out the others) from time to time anyways to form an updated opinion (which I do every few years).

BTW. If you have used CB nightly builds (and you almost have to if you want an updated version), especially those from 4-6 years ago, there are always bound to be some more-or-less buggy builds. If I encounter such buggy build, I just report the bug(s) and step one version down until the next build is released (and usually they have fixed the bug(s) by then).

I can't really remember at this point, its been about half of a year since I used Code::Blocks. Generally it seemed like a cool idea, but I think its just because I was coming down from a long experience of using Microsoft Visual Studio which... pretty much holds your hand the entire time. Maybe I'll have to take a look at it again.

If you know of any tutorials or guides to how to use Code::Blocks effectively, I might take another look at it. I think generally it was just a lot of information overload.

AniMerrill, a.k.a. Ethan Merrill

This topic is closed to new replies.

Advertisement