MinGW: Minimalist GNU for Windows

MinGW is a collection of freely available and freely distributable Windows specific header files and import libraries, augmenting the GNU Compiler Collection (GCC), and its associated tools (GNU binutils). MinGW provides a complete Open Source programming tool set which is suitable for the development of native Windows programs that do not depend on any 3rd party C runtime DLLs.

[Open MinGW Download Page from SourceForge in new window]
[Download MinGW Automatic Installer v5.1.4]

Here is recent news obtained from official MinGW Feeds...

Bloodshed Dev-C++

Bloodshed Dev-C++ is a full-featured Integrated Development Environment (IDE) for the C/C++ programming language. It uses MinGW port of GCC (GNU Compiler Collection) as it's compiler. Dev-C++ can also be used in combination with Cygwin or any other GCC based compiler.



Features of Dev-C++ 5: Support GCC-based compilers, Integrated debugging (using GDB), Project Manager, Customizable syntax highlighting editor, Class Browser, Code Completion, Function listing, Profiling support, Quickly create Windows, console, static libraries and DLLs, Support of templates for creating your own project types, Makefile creation, Edit and compile Resource files, Tool Manager, Print support, Find and replace facilities, CVS support

Requirements: Windows 95/higher with >32 Mb Memory
Note that executables compiled by Dev-C++ will need MSVCRT.DLL (comes with Windows 95 OSR 2 or higher).

Downloads

Dev-C++ 5.0 beta 9.2 (v4.9.9.2, 9.0 MB) with Mingw/GCC 3.4.2
Dev-C++ version 4.9.9.2, includes full Mingw compiler system with GCC 3.4.2 and GDB 5.2.1. Download Dev-C++ 5 from SourceForge
Dev-C++ 5.0 beta 9.2 (4.9.9.2), executable only (2.4 MB). Dev-C++ version 4.9.9.2, without Mingw compiler system and GDB. Get this one if you already have a previous Dev-C++ beta or already have a compiler.
Download DevC++ 5 (w/o MinGW) from SourceForge
Dev-C++ 5.0 beta 9.2 (4.9.9.2), Source Code (1.6 MB)
DevC++ v4.9.9.2 Source code (programmed for Borland Delphi 6) is available for free under the GNU General Public License (GPL).

Free Borland C++ Compiler

Free Borland C++ Compiler download. Please see the file bcb5tool.hlp in the Help directory for complete instructions on using the C++ Builder Compiler and Command Line Tools. Some items referred to in the Command-line Tools help (bcb5tools.hlp) are not included in the free C++ Builder Compiler package.

Borland's latest ANSI C/C++ compiler technology, the Borland. C++ 5.5 Compiler and associated command line tools, is now available for free download on Borland Web site.

The Borland C++ 5.5 Compiler is the high performance foundation and core technology of Inprise/Borland's award-winning Borland C++Builder product line and is the basis for Inprise/Borland's recently announced C++Builder™ 5 development system for Windows 95, 98, NT, and Windows 2000.

"Over the past 11 years, millions of developers have relied on the speed and quality of the Borland C/C++ compiler technology. Beginning this month, every developer will have free access to the latest Borland C/C++ compiler for building high quality Windows, Internet, and distributed applications," said Michael Swindell, director of product management at Inprise/Borland. "With Open Source development exploding on all platforms, developers can now rely on a leading commercial ANSI C++ compiler to be available for any Windows based Open Source project. In addition, with our forthcoming Linux C++ tools, development with Borland C++ tools today is an investment in Linux development for tomorrow."

"Since many programmers learned how to develop using Borland tools, it's great to see Inprise/Borland offer its widely-used compiler free of charge," said Sally Cusack, an analyst and research manager at International Data Corporation. "Developers who download this compiler will subsequently have a seamless path to the rich tools and capabilities of Borland C++Builder 5 for RAD, Internet, User Interface, database, and distributed solutions."

About Borland C++ Compiler 5.5

The Borland C++ Compiler 5.5 (BCC) is the foundation and core technology of C++Builder 5. Borland C++ Compiler 5.5 is a blazingly fast 32-bit optimizing compiler. It includes the latest ANSI/ISO C++ language support including, the STL (Standard Template Library) framework and C++ template support and the complete Borland C/C++ Runtime Library (RTL). Also included in the free download are the Borland C/C++ command line tools such as the high performance Borland linker and resource compiler.

The free download includes:

Borland C++ Command Line Tools

  • Borland C++ Compiler v5.5 (bcc32)
  • Borland Turbo Incremental Linker (tlink32)
  • Borland Resource Compiler / Binder (brc32, brcc32)
  • C++ Win32 Preprocessor (cpp32)
  • ANSI/OEM character set file conversion utility (fconvert)
  • Import Definitions utility to provide information about DLLs (impdef)
  • Import Library utility to create import libraries from DLLs (implib)
  • Borland Turbo Dump to structurally analyse EXE, OBJ and LIB files (tdump)
  • Librarian for symbol case-conversion, creating extended libraries and modifying page size (tlib)

Included Libraries

  • Borland C/C++ Runtime Library
  • ANSI/ISO Standard Template Library (STL)
BCC55 does not come with an Integrated Development Environment(IDE). Instead, you write your source code using a text editor, such as Windows Notepad or SciTE. You then compile, link, and run your programs from the command-line (a DOS Window). Borland also provides the text-mode Turbo Debugger as a separate free download.

Download Borland C++ Compiler v5.5 for Windows (Released on August 24th 2000, 8.7 Mb) directly from Borland site. You'll have to register, but registration is also free.

More Information:
  • Supplementary Information regarding Borland C++ 5.5 Command-line Tools
  • How do I install the Borland 5.5 Compiler and command-line tools? This article takes a look at what's contained in the free download and shows how you can start building programs.
  • You can download the Standard C++ Builder Help file from this address: ftp://ftp.borland.com/pub/bcppbuilder/techpubs/bcb5/b5std.zip (7.75 MB) . Much of this file contains material unrelated to the command-line tools, but you might find the C++ language and Standard C++ Library reference useful.
  • If you require additional resources for issues regarding the command-line tools, please refer to Borland newsgroups.

Get a Free C++ Compiler for Windows

Bloodshed Dev-C++ is a full-featured Integrated Development Environment (IDE) for the C/C++ programming language. It uses Mingw port of GCC (GNU Compiler Collection) as it's compiler. Dev-C++ can also be used in combination with Cygwin or any other GCC based compiler.

The Borland C++ Compiler 5.5 (BCC) is the foundation and core technology of C++ Builder 5. Borland C++ Compiler 5.5 is a blazingly fast 32-bit optimizing compiler. It includes the latest ANSI/ISO C++ language support including the STL (Standard Template Library) framework, C++ template support and the complete Borland C/C++ Runtime Library (RTL). Also included in the free download are the Borland C/C++ command line tools such as the high performance Borland linker and resource compiler.

Getting Started with C++

What is C++?

Released in 1985, C++ is an object-oriented programming language created by Bjarne Stroustrup. C++ maintains almost all aspects of the C language, while simplifying memory management and adding several features - including a new datatype known as a class (you will learn more about these later) - to allow object-oriented programming. C++ maintains the features of C which allowed for low-level memory access but also gives the programmer new tools to simplify memory management.

What is C++ used for?

C++ is a powerful general-purpose programming language. It can be used to create small programs or large applications. It can be used to make CGI scripts or console-only DOS programs. C++ allows you to create programs to do almost anything you need to do. The creator of C++, Bjarne Stroustrup, has put together a partial list of applications written in C++.

What is Object-Oriented Programming?

Object oriented programming is essentially building a program around self-contained collections of data and code to modify that data; this programming model is in contrast to a model that uses function that act on data scattered throughout a program. Object-oriented programming (or coding, as programming is commonly referred to) is an organizational style, but it helps programmers create reusable code because the code to do a specific thing is entirely contained within a single section of code, and to use the code to perform tasks - for instance, creating a menu - involves using only a small number of functions to access the internals of the class. Think of it as a black box that can be easily carried from place to place, and that performs complex actions simply at the press of a button: for instance, a microwave lets you heat food for a specified time limit - say, two minutes - by typing in the time and pressing the heat button. You do not need to know how the microwave operates or why the physics works. In the same way that self-contained appliances simplify life for the consumer, object-oriented programming simplifies the transfer of source code from one program to another program by encapsulating it - putting it all in one place.

What do you need to program in C or C++?

In order to make usable programs in C or C++, you will need a compiler. A compiler converts source code - the actual instructions typed by the programmer - into an executable file. Numerous compilers are available for C and C++. Listed on the sidebar are several pages with information on specific compilers. For beginners, Bloodshed Dev, which uses a Windows interface, is a free and easy-to-use compiler.

How do you learn C++?

No special knowledge is needed to learn C++, and if you are an independent learner, you can probably learn C++ from online tutorials or from books. There are plenty of free tutorials online, including some that require no prior programming experience.

While reading a tutorial or a book, it is often helpful to type - not copy and paste (even if you can!) - the code into the compiler and run it. Typing it yourself will help you to get used to the typical typing errors that cause problems and it will force you to pay attention to the details of programming syntax. Typing your program will also familiarize you with the general structure of programs and with the use of common commands. After running an example program - and after making certain that you understand how it works - you should experiment with it: play with the program and test your own ideas. By seeing which modifications cause problems and which sections of the code are most important to the function of the program, you should learn quite a bit about programming.

Do I need to know C to learn C++?

No. C++ is a superset of C; (almost) anything you can do in C, you can do in C++. If you already know C, you will easily adapt to the object-oriented features of C++. If you don't know C, you will have to learn the syntax of C-style languages while learning C++, but you shouldn't have any conceptual difficulties.