XCode or Terminal?
Hello Everyone...
I am developing a cross platform game using portable libraries and C++. My next computer is most likely going to be a Mac. My current development environment is Visual Studio C++ 2005 Express on XP. I've done quite a bit of stuff in the Linux world, so I am fairly familiar to the Unix tool chain and very comfortable with the command line.
Which build environment should I use on the Mac? XCode or straight command line? Like I said, I am very comfortable with the command line(vim ftw), but is XCode a great alternative to Visual Studio and for C++ programming?
I am developing a cross platform game using portable libraries and C++. My next computer is most likely going to be a Mac. My current development environment is Visual Studio C++ 2005 Express on XP. I've done quite a bit of stuff in the Linux world, so I am fairly familiar to the Unix tool chain and very comfortable with the command line.
Which build environment should I use on the Mac? XCode or straight command line? Like I said, I am very comfortable with the command line(vim ftw), but is XCode a great alternative to Visual Studio and for C++ programming?
Xcode isn't a great alternative for anything at all. If you're used to the Linux command-line, you'll almost certainly want to stay there.
(Disclaimer: I'm well known for hating Xcode more than most people).
(Disclaimer: I'm well known for hating Xcode more than most people).
OneSadCookie is well known for his dislike of XCode. And not to say he is wrong (in fact, he is usually right about everything), but I happen to like XCode.
It can be especially helpful when first starting mac development because it automatically packages your app into a .app, gets you using .frameworks, etc, etc..
It is free.
It has all of the standard features of a large ide.
But it does have it's own set of issues.
For the record, I too love the unix tool chain (especially emacs).
My advice: use XCode for a little bit to get comfortable. Then make you own decision.
BTW - A great mac editor is TextMate. It is the de-facto standard for the Ruby world, but it works for any language.
It can be especially helpful when first starting mac development because it automatically packages your app into a .app, gets you using .frameworks, etc, etc..
It is free.
It has all of the standard features of a large ide.
But it does have it's own set of issues.
For the record, I too love the unix tool chain (especially emacs).
My advice: use XCode for a little bit to get comfortable. Then make you own decision.
BTW - A great mac editor is TextMate. It is the de-facto standard for the Ruby world, but it works for any language.
What's wrong with xCode?
Xcode goes out of its way to make the things that you really want to do all the time (managing dependencies, compiler options, etc), really hard. In return, you can avoid learning GCC's command-line options for maybe a couple of weeks until something goes wrong with your build and you have to delve into the detailed build logs. The debugger GUI is nasty, and GDB in general lies enough that it's not a good idea to trust it (though that's not to say it's not useful). Most of GDB's most useful features aren't represented in the GUI so you have to drop back to the text interface anyway. The code completion is good and works well these days, but you have to have a native Xcode project and all the pain that entails in order to use it. Sometimes it doesn't save your files, doesn't rebuild your files, doesn't restart your application, or something equally stupid and undetectable that you then spend hours wondering why your changes aren't taking. Prior to Xcode 3 you have to do the "Turn off ZeroLink" dance every new project.
Yes, the learning curve of the command-line tools is higher, but they give more control, more power, and (for me at least) a great deal less frustration.
Yes, the learning curve of the command-line tools is higher, but they give more control, more power, and (for me at least) a great deal less frustration.
Bottom line: You'll have to learn gcc anyway to whack XCode into useable shape, so you might as well save yourself the trouble of learning it and use Scons/make/cmake/rake/rbuild/jam/countless others build systems. All of the above are better than xcode.
It's not magic, it's Ruby.
Nayr Wrote:Bottom line: You'll have to learn gcc anyway to whack XCode into useable shape, so you might as well save yourself the trouble of learning it and use Scons/make/cmake/rake/rbuild/jam/countless others build systems. All of the above are better than xcode.
Isn't jam part of xcode though?
Sir, e^iπ + 1 = 0, hence God exists; reply!
Just to balance the debate: I've used XCode daily since it came out, and I've only been angry with it a couple of times.
I've been looking around at the build systems you mentioned...since the game is going to be multiplatform I'm trying to get it to build on Windows through the build systems. I tried kjam...but that didn't like my code. I'm now trying out scons. I honestly can't wait to get into a Unix environment....100x better than Windows. I just hope I know how to properly set everything up in the right directories etc.
I use XCode for everything I do on the mac, and although it has its annoyances, I would say it's better than using a command line for simple projects. My project includes using dylibs that I've created, so every time I modify a dylib and compile it, I just command-quit XCode while I'm moving the dylib to my main app's folder for testing, then just re-open it when I get back in to modify the code. This seems to prevent any problems with files saving for the most part, and keeps XCode behaving normally for me
Worlds at War (Current Project) - http://www.awkward-games.com/forum/
See, this guy has to keep *quitting* Xcode to make it work well... Now there's an advertisement for quality!
I really like SCons personally. Make for simple stuff, perhaps, but SCons scales really well.
I really like SCons personally. Make for simple stuff, perhaps, but SCons scales really well.
Wow. This all makes me feel really good. So one guy says use xCode, one guy says don't use xcode, and one says I'll find out what's wrong with it.
I took a look at SCons, kjam, and bjam...they all look really complex and I don't need to spend that much time learning how to build a program. I had a look at CMake, and that looks perfect for my needs.
I'm with Fenris here. I do a different type of development than Keith does, but Xcode works great 95% of the time. Every program has its stupid little oddities one way or another.
My development doesn't require a lot of compiler options (the most I do is add some flags in a field -- woopdeedoo), I use dependencies but those were actually pretty simple to setup (Xcode 3 is easier), ZeroLink was raaaaarely an issue for me, but it doesn't matter anyway now that it's gone, I've never seen a better debugger GUI so I don't know how it's nasty....
I use Xcode every day all day long and it works great for me.
My development doesn't require a lot of compiler options (the most I do is add some flags in a field -- woopdeedoo), I use dependencies but those were actually pretty simple to setup (Xcode 3 is easier), ZeroLink was raaaaarely an issue for me, but it doesn't matter anyway now that it's gone, I've never seen a better debugger GUI so I don't know how it's nasty....
I use Xcode every day all day long and it works great for me.
Possibly Related Threads...
| Thread: | Author | Replies: | Views: | Last Post | |
| SVN: Terminal or XCode... | Nevada | 8 | 5,060 |
Aug 5, 2007 01:35 AM Last Post: BeyondCloister |
|
| Compiling in the Terminal | Nick | 5 | 2,978 |
Sep 8, 2005 04:28 PM Last Post: Nick |
|
| /sw/lib/libcurl.2.dylib to /usr/lib/??? (terminal...???) | BinarySpike | 10 | 5,800 |
May 2, 2005 10:05 AM Last Post: BinarySpike |
|

