Getting started with a Linux software-development toolchain
C Programming in Linux, Programming Tools : The choice of a code editor or integrated development environment may be hardest to make. There are so many choices, so many visual styles, and so few metrics one can use to determine which works best for a specific developer, development team, or project. Rather than attempting to present a comprehensive list of Linux development tools—which can be easily gathered with a Web search—here are just a few tools for native C/C++ projects in Linux, that come highly recommended.

by Alan Zeichick, principal analyst, Camden Associates. Intel Corp.

For many Windows developers, Linux presents a learning challenge. Not only does Linux have a different programming model, but it also requires its own toolchain, as programmers must leave behind the Visual Studio or Visual Studio .NET suites and third-party plug-in ecosystem. This article helps Windows developers understand the options available as they seek to replicate, on Linux, the rich and efficient toolchain experience they've long enjoyed on Windows.

Making the move to Linux can be an exciting and challenging opportunity for Windows developers. The power of the open-source operating system, including its support for a wide variety of hardware platforms, is appealing. So, too, is its now-legendary stability, performance and scalability. But programmers seeking to write software for Linux will need the appropriate native software development tools—and finding the right toolchain can be a challenge in its own right.

The toolchain challenge
Why is there a toolchain challenge? The short answer is, because the Linux world has grown organically, with separate teams and open-source projects building different parts to suit their own needs and schedules. There's no unifying vision between the operating system and development tools. The open-source project led by Linus Torvalds that just introduced kernel 2.6, for example, is unrelated to the contributors who evolve the GNU Compiler Collection, Borland Kylix, the Intel VTune Performance Analyzer, or the open-source Eclipse project founded by IBM.

By contrast, Microsoft designs and builds its tools (now consolidated under the Visual Studio suite) in close lockstep with each evolution of the operating system, with an eye not only to adding those features that developers want most, but also guiding programmers into a specific software-development model.

Plus, Microsoft, through VS and VS.NET, as well as its Visual Studio Integration Partner program and MSDN subscription service, intends its tools to be the "official " software development resources for Windows. There's no such default "official " choice with Linux. Even though most Linux distributions come with a wide variety of command-line tools, and even some GUI offerings, there's no particular reason to use those tools instead of other open-source or commercial-license products.

Subscribers who liked this article also read:
Web services extend high-performance computing grid capabilities
by Matt Gillespie, technical author. Intel Corp. Grid computing bas...
Multiprocessors, clusters, grids, and parallel computing: what's the difference
by Andrew Binstock, principal analyst, Pacific Data Works LLC. Intel C...
Creating a particle system with streaming SIMD extensions
by William Damon, technical marketing engineer, Software Solutions...

If you're interested in this topic, these articles may be helpful:

Intel Fortran Compiler 8.1 for Linux
Intel Corp Reduce time-to-market, optimize your code for Intel®...
Using Intel C++ Compiler 8.0 with the Eclipse Integrated Development Environment on Linux systems
Intel Corp. The Eclipse Project is an open-source software-developm...
Porting Unix/Linux applications to Mac OS X
Apple Inc. This guide helps developers bring applications written...
IBM Rational Rose — Linux/Unix
IBM Rational Rose for UNIX and Linux has been replaced by IBM Rational...
What is XSYS?
by Michael Pike, XSYS XSYS is an advanced application engine that e...

Related Jobs:

Tech Yahoo!, Software Developer #5948 - CA - Sunnyvale - Yahoo! Inc.
Tech Yahoo!, Software Developer Requisition ID 5948 Location Sunny...
Senior Solution Architect 0331 #Q08587 - VA - Herndon - BAE Systems
* Description: Provide leadership and development for IT m...
Lead Secure Systems Analyst #Q09008 - VA - Mclean - BAE Systems
* Description: o Candidate will be responsible for per...
Senior Software Engineer #5947 - CA - Sunnyvale - Yahoo! Inc.
Senior Software Engineer, Yahoo client platform Requisition ID 5947 ...
Senior Software Engineer #6087 - CA - Wenatchee - Yahoo! Inc.
Senior Software Engineer, Search Marketing Requisition ID 6087 Loc...
Lead Software Engineer #Q09068 - MD - Frederick - BAE Systems
* Description: o Perform day-to-day functions required...
Quality Assurance Engineer #RX1000023968 - CA - Burbank - Yahoo! Inc.
Quality Assurance Engineer - Web UI Automation Job No. RX10000239...
Production Engineer, Sponsored Search #5884 - CA - Santa Clara - Yahoo! Inc.
Production Engineer, Sponsored Search Requisition ID 5884 Location...
Senior Lead Database Administrator #Q08714 - DC - Washington - BAE Systems
* Description: o The program is an established IT app...
Oracle DBA #6154 - CA - Sunnyvale - Yahoo! Inc.
Oracle DBA - Yahoo! Marketplace Requisition ID 6154 Location Sunny...