For many reasons, the lead developer and co-founder of the MinGW-w64 project, Kai Tietz, decided not to attempt further cooperation with MinGW. It was first submitted to the original MinGW project, but refused under suspicion of using non-public or proprietary information. In 2008, OneVision then donated the code to Kai Tietz, one of its lead developers, under the condition that it remains open source. In 2005, Mingw-w64 was created by OneVision Software under clean room design principles, since the original MinGW project was not prompt on updating its code base, including the inclusion of several key new APIs and the much needed 64-bit support.
Mingw-w64 can generate 32 bit and 64-bit executables for x86 under the target names i686-w64-mingw32 and x86_64-w64-mingw32. Mingw-w64 can be run either on the native Microsoft Windows platform, cross-hosted on Linux (or other Unix), or "cross-native" on MSYS2 or Cygwin.
Mingw-w64 includes a port of the GNU Compiler Collection (GCC), GNU Binutils for Windows ( assembler, linker, archive manager), a set of freely distributable Windows specific header files and static import libraries which enable the use of the Windows API, a Windows native build of the GNU Project's GNU Debugger, and miscellaneous utilities. It was forked in 2005–2010 from MinGW ( Minimalist GNU for Windows). Mingw-w64 is a free and open source software development environment to create Microsoft Windows PE applications.
ZIP is convenient, especially when: building Code::Blocks itself, but other than that these tools only serve specialized purposes.Public domain (headers), GNU General Public License (compiler and toolchain), Zope Public License Normally you should not need many of these tools. MinGW Equation - A package that also provides OpenMP.
Mingw-w64 - The parent project of MinGW-Builds, includes much more than is necessary - MinGW-Builds will usually suffice instead of the full works. MinGW-Builds ➡ In, "Toolchains targeting Win32 or Win64," ➡ "Personal Builds," ➡ "mingw-builds," ➡ Version, ➡ Threading Model, ➡ Exception Model, ➡ Revision. Using this guide as a template you can easily set up alternative compiler toolchains no matter the source - just follow the same basic procedure. You now have a Code::Blocks environment that is configured to use TDM-GCC 32-bit properly. If you choose the blue arrow ellipsis first then for each ellipsis you click on under "Program Files" you will already be in your TDM-GCC bin directory where the actual programs are.Ĭhoose your default debugger (red arrow), and then fill in the Executable path for it as shown for TDM-GCC 32-bit (blue arrow). If you aren't using the TDM-GCC toolchain there might be minor variation in the executable names. Once you have that directory chosen, in the "Program Files" sub-tab (green arrow) area fill out the fields as shown.
Once you are ready, click Install to proceed.Īnd then under the "Toolchain executables" tab (red arrow), click on the ellipsis (".", blue arrow) and choose the root directory where you installed TDM-GCC 32-bit. Go through the installation pages, the red arrows are all the default options which we will be keeping and the last blue arrow is to indicate that you will be putting TDM-GCC into your system's PATH. The Code::Blocks team recommends TDM-GCC.ĭownload the on-demand installer and run it. Which means that when you create your installer for your final program there are less files to include - they are built into your executable itself. TDM-GCC statically links the required toolchain libraries into your final executable. TDM-GCC is the toolchain that will be used as the example for this guide. On your machine they are in your PATH so you always have them, on your users computers they won't have the compiler toolchain so there you provide the.
dll files out of your toolchain directory and include them as part of your installer.
When you actually distribute your programs to other computers then you will copy the needed. Which means "Minimalist GNU for Windows." And "GNU" expands to "GNU's Not Unix." More information about the GNU project can be found on the GNU Home Page.įor most MinGW-based compiler toolchains, having your toolchain in your PATH is important because it means that during development the toolchain libraries will be accessible by default to your programs as you develop them and also makes it easier to use utilities such as CMake as they will be able to find your compiler toolchain. The kind of compiler toolchains talked about on this page are "MinGW" toolchains. As a compiler toolchain is a very complex undertaking it is not part of Code::Blocks itself but rather is a separate project that Code::Blocks then uses.