Revision of HOWTO Install the MinGW (GCC) Compiler Suite from 2013, September 3 - 20:16

Printer-friendly version
  • strict warning: Non-static method Text_Wiki::singleton() should not be called statically in /var/www/drupal/6.x/sites/ on line 475.
  • strict warning: Non-static method Text_Wiki::factory() should not be called statically in /usr/share/php/Text/Wiki.php on line 448.
  • strict warning: Non-static method Text_Wiki::isError() should not be called statically in /usr/share/php/Text/Wiki.php on line 449.
  • strict warning: Declaration of Text_Wiki_Parse_Emphasis::process() should be compatible with Text_Wiki_Parse::process(&$matches) in /usr/share/php/Text/Wiki/Parse/Mediawiki/Emphasis.php on line 0.

Automated Installer

If you are new to MinGW, see the MinGW Getting Started instructions to use the automated GUI or manual CLI (Command Line Interface) installers. What follows below are instructions for a very "manual" download, typically only attempted by more experienced users.

Manual Installation

Before you start this manual installation, read the text at the bottom of this.

  • Determine which files below you need and download them.
  • Extract the files into a directory such as C:\MinGW
  • Add C:\MinGW\bin; to the PATH environment variable.

You will need a program that can extract .tar.lzma files, such as 7-Zip or one that provides command-line tar and lzma tools. A basic standalone tar program that includes lzma support is available from the MinGW project and is called bsdtar

You must add C:\MinGW\bin; to your user PATH environment variable manually. You can permanently add C:\MinGW\bin; to your PATH by following the instructions in the "Environment Settings" section on the MinGW Getting Started page.

The resulting C:\MinGW subtree is fully relocatable which means that you can have multiple installations or versions MinGW suite. You can potentially have installations such as:


Switching between these is merely a matter of renaming any particular directory to C:\MinGW.

Files To Get

Download at least the following (or newer) packages from the MinGW Download Page. Where two or more component packages are indicated, you need both / all of them.

The above are the minimum requirements for a working C Language compiler using the MinGW GCC toolchain.

You can also add one or more of the following optional compilers or tools. For each you choose to install, you need both the bin and the dll component packages:

  • gcc-g++ (bin and dll) for C++
  • gcc-objc (bin and dll) for Objective C
  • gcc-gfortran (bin and dll) for Fortran 90/95
  • gcc-java (not yet available) for Java
  • gcc-ada (bin and dll) for Ada

Note that the GCC versions of these files must match the GCC version of the gcc-core installed.

You can also add the following additional utilities:

You may also want the following features:

Getting Updates or Making Changes

Updating a single package (e.g. when there is a new version of w32api) can be done by extracting the new version to C:\MinGW to overwrite the older version. This manual update also works with an initial automated install.

Re: HOWTO Install the MinGW (GCC) Compiler Suite

I installed using the process BUT this release is quite old. The page suggests current stable release is 4.4 while the MinGW installer installs 3.4. Also this installer has g77 which is no longer a part of GNU compiler suite, its replaced by fortran95.

Thanks for your kindness for the MinGW compilers suite :)

Re: HOWTO Install the MinGW (GCC) Compiler Suite

Use the MinGW installer to get everything set up in the proper directories. Then if you want version 4.4, download gcc-full-4.4.0-mingw32-bin-2.tar.lzma from the MinGW Sourceforge download page. You can decompress and unarchive using 7za from the 7zip web site. For instance, download the file to the c:\mingw directory, cd to that directory and then type:

   7za x gcc-full-4.4.0-mingw32-bin-2.tar.lzma 

   7za x gcc-full-4.4.0-mingw32-bin-2.tar

This should update your MinGW compiler suite. If you're using msys, there may be some other files you'll want to update as well.

Re: HOWTO Install the MinGW (GCC) Compiler Suite

i have to install MinGW in my windows system.I am using MinGW-5.1.4 and i run the MinGW-5.1.4.Exe,after that i select custom from the dropdown box,and then, l selected g++ compiler,g77 compiler and MinGW Make only.Destination folder like C:\MinGW.This is correct way to install MinGW.Please help me how to install MinGW in the windows.I am using Windows XP.


Re: HOWTO Install the MinGW (GCC) Compiler Suite

Download MinGW automated installer from

Run it and choose options as per needed. It would install everything right. Then add C:\MinGW\bin to you PATH variable.

More detail is available on this web site if you care to search.

Re: HOWTO Install the MinGW (GCC) Compiler Suite

Is there a way to install MinGW with objC garbage collector enabled ?

Re: HOWTO Install the MinGW (GCC) Compiler Suite

MinGW automated installer does not let me select the mirror for downloading files.

This cause very slow in downloading and installing MinGW.

Please update it.

Re: HOWTO Install the MinGW (GCC) Compiler Suite

keith's picture

You can set a preferred mirror in your own SourceForge user preferences. The installer uses whatever you have set there, with SF's automatic mirror selection as fallback. No update is necessary.

Re: HOWTO Install the MinGW (GCC) Compiler Suite

Is there a plan or guide for users who need to install MinGW to the "Program Files" or "AppData" directories? MS is becoming more hard line about installs that reside outside of their standard locations.

Re: HOWTO Install the MinGW (GCC) Compiler Suite

keith's picture

So, Microsoft own your computer, do they?

It isn't their right to tell you how you must deploy your hardware. The canonically correct place to install MinGW is C:\MinGW, but you may move it anywhere else that you prefer, subject to the caveat that you must avoid path names with embedded spaces. If Microsoft tell you they can't allow you to accommodate that, tell them where to get off!

Re: HOWTO Install the MinGW (GCC) Compiler Suite

The MinGW installer is great, both for initial installs and for updates. But would it be possible to add the gdb debugger to the list of things it (optionally) installs/updates? Surely a debugger is a pretty essential component?


Re: HOWTO Install the MinGW (GCC) Compiler Suite

Is it correct that the MinGW download page link at the start of the Manual Installation instructions given above points to the MinGW Utilities: TclTk download page? Is the TclTk package a pre-requisite of the MinGW Compiler Suite?

Re: HOWTO Install the MinGW (GCC) Compiler Suite

keith's picture

No, and certainly not. I've corrected the reference; thanks for the heads-up.

Re: HOWTO Install the MinGW (GCC) Compiler Suite

Is there a way to install MinGW with objC garbage collector enabled ?


Re: HOWTO Install the MinGW (GCC) Compiler Suite


I am not able to get these ir entries ,w hat are they supposed to do??


ren dir dir.binutils
cd ..
.cd info
copy dir dir.gcc
copy dir+dir.binutils


kindly elaborate!!


Re: HOWTO Install the MinGW (GCC) Compiler Suite

keith's picture

Why? Already asked, and answered. If you opened your eyes, and read the comment immediately below, you would have had no need to ask again! Indeed, it's already elaborated, in the notes following the relevant instruction, within the article itself!

A file is missing.

The copy I got of <binutils-2.19.1-mingw32-bin.tar.gz> from this site does not include a file called <dir>. Is that file supposed to always be produced by <tar.exe>? I used <bsdtar.exe> because that is what I got from <>. Is that causing the problem? What is that file used for? Is it really important?

Re: A file is missing.

keith's picture

Nope. That file should never be distributed; see my earlier comment to this same article, and this bug report.

Re: HOWTO Install the MinGW (GCC) Compiler Suite

and so
when i compile gcc doesn't create e .exe with the same name but a file called 'a.exe'
i ve window XP

Re: HOWTO Install the MinGW (GCC) Compiler Suite

keith's picture

This comment is off-topic for this article; please use the mailing list.

For completeness here: this is correct behaviour -- default executable name is a.exe for all compilations. If you want something else, you must say so explicitly, by using the -o exename option, e.g.

gcc -o foo foo.c

will create an executable called foo.exe.

HOWTO Install the MinGW (GCC) Compiler Suite

i ve installed MinGW with Automated (GUI) Installer.
on internet someone says to di this in enviroment setting:

Valore: C:\MinGW\include

Nome: LIB
Valore: C:\MinGW\lib

Valore: C:\MinGW

Nome: PATH
Valore: C:\MinGW\bin

is it the truth?

Re: HOWTO Install the MinGW (GCC) Compiler Suite

keith's picture

The last is correct. The first three are unnecessary.

Re: HOWTO Install the MinGW (GCC) Compiler Suite

Require assistance.
0) I installed Mingw-5.1.4 "automatically" to C:\Documents and Settings\ouid\MinGW.
1) For some reason it didn't update my env. variables.
I added "C:\Documents and Settings\ouid\MinGW\bin\" to env.tables
2) I created file a.c with "int main(){}"
3) I try: C:\Documents and Settings\ouid\c>gcc a.c
gcc: installation problem, cannot exec `cc1': No such file or directory
4) I added "C:\Documents and Settings\ouid\MinGW\libexec\gcc\mingw32\3.4.5\" to %PATH%.
5) I try: C:\Documents and Settings\ouid\c>gcc a.c
ld: crt2.o: No such file: No such file or directory
After some googling I found that setting GCC_EXEC_PREFIX to lib/ directory will resolve the issue.
6) I added GCC_EXEC_PREFIX="C:\Documents and Settings\ouid\MinGW\lib\" to env variables
7) I try: C:\Documents and Settings\ouid\c>gcc a.c and it does NOTHING
but freezes up for eternity.
8) Google said that dropping everything from path and using full pathnames like
C:\Documents and Settings\ouid\bin\gcc a.c works. And it's really work. But this is workaround looks too stupid for obvious reasons. Well, creating gcc.bat thal calls C:\Documents and Settings\ouid\bin\mingw32-gcc and putting it in %PATH% works, but this workaround sucks.

What can be done to run gcc from %PATH%ed directory properly?

PS. My os is windows xp.

Re: HOWTO Install the MinGW (GCC) Compiler Suite

keith's picture

Please review the updated version of the instructions. In particular, note the time honoured advice about path names which include spaces; (since you've used such a degenerate installation path, you should uninstall, and then install again, properly).

Also note the section about setting up your environment; you should not need to add anything else, but you must add C:\MinGW\bin to the PATH variable.

Re: HOWTO Install the MinGW (GCC) Compiler Suite

Not sure if this is the right place for this. Attempted to install MinGW for the first time, via the installer (today 27 feb 2009 around 22 GMT), install dir C:\MinGW. Got as far as un-gz'ing / un-tar'ing the g++ tarball:

Extracting gcc-g++-3.4.5-20060117-3.tar.gz
untgz::extract -d 'C:\MinGW' -z 'C:\Users\root\Desktop\gcc-g++-3.4.5-20060117-...
tgz_extract: bad header checksum
Error: Failure reading from tarball.

Downloaded installer again, compared fc /b, same.

Ran again, same error.

Found where it keeps the *.tar.gz, removed offending one to force re-download, same error.

Ran installer from C:\tmp rather than Desktop to force shorter paths, same error.

Ran again with all same options except without g++ this time, installed fine. I think. Not tried yet.

Really seems to be that *g++*.tar.gz then.


PS 32-bit Windows Vista Home Plus with the latest service packs, Firefox 3.0.6, on a MAXdata (dual core AMD64, 1G ram, 80G partition with 68G free).

Re: HOWTO Install the MinGW (GCC) Compiler Suite

keith's picture

1) This is not the right place for this sort of discussion; you should use the mailing list, (and you should first search the archives:

and review associated threads (click on an article reference link, then on the `subject' link in the article view)).

2) The problem results from SourceForge themselves having broken the `files' page scripting, (which is common to all their hosted projects), such that it chokes on files with `+' signs, (or possibly explicitly `++'), within the name, and fails to generate a valid download mirror URL. It has been reported:

No fix has yet been forthcoming. Bug SF about it; only they can fix it; we are powerless to resolve it.

Re: HOWTO Install the MinGW (GCC) Compiler Suite

Okay, so i've now read burton's msg of 22 feb and the manual workarounds, in the Getting Started | MinGW wiki (how do you link to another thread?)

So consider this a heads-up that it's still broken. Must put lots of new people off. And i can't say i now understand *what* exactly the error with this one file is...

Re: HOWTO Install the MinGW (GCC) Compiler Suite

do not install MinGW into the same path as MSYS

Re: HOWTO Install the MinGW (GCC) Compiler Suite

I´m missing the gdb installation package from this HOWTO. Actually its missing in the automated installer as well. It would be nice if the automated installer would notify the user what version of the package it will download/install if you choose previous, current or candidate package.

Re: HOWTO Install the MinGW (GCC) Compiler Suite

While the gzip and tar commands are useful, it would be useful to state the directory name explicitly for those like me that choose to manually create the info-dir directories another way. It was not clear whether the directory needed to be named 'dir' or 'info-dir' or '', etc, without crinkling the brow. Thanks for all this, btw...

Re: HOWTO Install the MinGW (GCC) Compiler Suite

keith's picture

In the context of info, `dir' is a file, not a directory (in the file system sense); it is always called `dir', and is found in a directory in the `INFOPATH'. Please see the comment below, which I added in August 2008, concerning the proper way to manage info's `dir' files.

Re: HOWTO Install the MinGW (GCC) Compiler Suite

I propose merging these instructions into the existing instructions on the Getting Started page. I don't see the sense in having automated installation described on the Getting Started page and manual installation described in a HOWTO.

Re: HOWTO Install the MinGW (GCC) Compiler Suite

keith's picture

I can see a practical reason for keeping them segregated.

The `Getting Started' really should be just a `Quick Start' guide, for new users. Such users really don't want to be overwhelmed by too much detail -- they just want to get up and running with a minimum of fuss.

OTOH, more experienced users may appreciate more detailed information. Such users may wish to maintain multiple installations, at different version levels for example, or to incrementally upgrade an existing installation, as newer components are released. (They may wish to do this directly, *without* having to go through the pain of running a nasty wizard style installer, which is really best suited to first time installation only -- ok, that's just my opinion of them, but I'm sure I'm not alone). The detailed information needed to facilitate this doesn't really belong in a `Getting Started' guide; it deserves a more extensive `HOWTO' document.

I'd actually suggest *simplifying* the `Getting Started' page, (to make it a real `Quick Start' guide), and keep this `HOWTO' as a detailed reference. Include a link to here, on the `Getting Started' page, for users wanting more detail, and if necessary merge any content removed from `Getting Started' in here.

Re: HOWTO Install the MinGW (GCC) Compiler Suite

keith's picture

Re the concatenation of info/dir files:

More recent versions of the distributed packages should not even provide the precompiled dir files. These are only useful for users who have an info viewer installed, which basically means those who use MSYS[1].

For those who do use MSYS, you will have both the info viewer, and also the supporting makeinfo and install-info tools; the correct way to build the dir file is to run each of the supplied *.info files through install-info:

cd info;
for file in *.info; do install-info $file dir; done

[1] Yes, I know GnuWin32 also provides an info package; last time I looked, their viewer didn't work. Cygwin also has it, and that works, but uses the dir files installed in the Cygwin tree. It is possible that an alternative native implementation is available elsewhere; if so, it should also provide an install-info tool.

This wiki is not a forum for discussion of usage issues. Please use the list instead. We do not allow creation of comments by anonymous or untrusted users, on any page.
Site Status

Site maintenance performed successfully, site online Dec 13th 12:00 AM Eastern.