tags:

views:

112

answers:

2

Why do we need third party build tools like this one?

Don't we have build facilities integrated into our IDEs?

What do these tools actually do that is not provided in the IDEs?

+5  A: 

The ability to run a build server which doesn't have to start an IDE in order to build a product?

The ability to have a standardized build so that a developer doesn't have to install another IDE just to be able to build some third party code? Think about the Open Source world - you don't want to force all the developers on a project to use the same IDE, nor do you want to force any user who wants to build from source to install a whole IDE just for the sake of that. It's a lot easier to run Ant than to keep track of a whole bunch of IDEs.

What's good is that IDEs such as Eclipse support 3rd party build systems like Ant - that's the way it should work IMO, rather than tailoring the build to one specific IDE.

The .NET world has a slightly different take on this, where MSBuild is part of the framework, but is also the build format used by Visual Studio. (Personally I like to use NAnt for control of the build process, and MSBuild to do the actual compilation stage.)

Jon Skeet
Which bit, and why? An IDE is for a lot more than building - so if I *only* want to build (on a build server), why would I want to have a full IDE?
Jon Skeet
Also, standardizing and automating the build helps alleviate the "works on my box" syndrome, since people have a common reference build!
Dave Markle
@Dave: Exactly.
Jon Skeet
+2  A: 

Adding to Jon's answer concerning the build server - ensuring that the build can be done cleanly on a machine that doesn't have e.g. trial versions of components, and various developer tools, so the end users machine won't need those either.

Damien_The_Unbeliever