Wednesday, October 24, 2012

Dev-C++ released

Time for another big fixes pack for the 5.3 version.

Changes - Version - 24 Oktober 2012
  • Fixed error line focus dissapearing when moving focus on the same line.
  • The window caption now shows more information, like the debugging/compiling/executing status.
  • Fixed compilation failing when the compilation progress window is hidden.
  • CPU Window now updates faster.
  • One can now properly use Replace in Files to replace files not yet opened.
  • Upgraded the variable finder.
  • Added a find count to the bottom of the find output list.
  • Debug evaluation now hints the user when it contains old potentially invalid data.
  • When trying to debug, Dev-C++ now suggests to compile, instead of showing an error that the source isn't compiled.
  • Project options are now properly applied when not changing tabs in Project Options >> Compiler.
  • New projects now properly use the global compiler set by default.
  • Added two more themes. Credits go to Andrei Luca.
  • Improved parsing speed somewhat.
  • Improved startup time.
  • Reduced the amount of clicks needed to change compiler options.
  • Fixed numerous debugger bugs, most are related to watch variables.
  • When a signal is received by gdb, Dev-C++ now suggests to open up CPU window.
  • Fixed a lot more bugs.
  • Fixed a bug in the code completion form that prevented the source from being compiled on fresh Delphi IDEs.
  • Fixed an error in the relative path solver, making Dev-C++ fully portable again.

Important notices
  • When you get errors on startup after upgrading, especially when Dev-C++ mentions 'TCppParser.Load', read this before commenting/reporting.
  • This version has GCC built-in instead of being an aditional package. It also contains, among others, D3D9/10/11, GDI, Win32 and OpenGL headers and libraries in that flavor.
  • For ultimate portable programming, please launch devcppPortable.exe located in the installation folder of the portable version. This launcher will tell Dev-C++ to save its configuration files in the same folder as the executable.
  • If you're getting 'Unsupported compression method' errors when extracting the portable version, please update your archiving program. The archive uses LMZA2 compression, which was added to WinRAR 3.91 and 7zip 9.04 somwhere in 2009. The latter is just as free as Dev-C++, so nothing is holding you back to extract it.

  • The setup which includes MinGW32 4.7.0 can be downloaded here (25MB).
  • The setup which includes TDM-GCC x64 4.6.1 can be downloaded here (35MB).
  • The setup which does not include a compiler can be downloaded here (2MB).
  • The portable version which includes MinGW32 4.7.0 can be downloaded here (15MB).
  • The portable version which includes TDM-GCC x64 4.6.1 can be downloaded here (25MB).
  • The portable version which does not include a compiler can be downloaded here (2MB).
  • Separate compilers can be downloaded here.
  • Lastly, the source code can be found here (1MB).

All editions can run on 32-bit Windows.

All Dev-C++ editions can be updated using the No Compiler setups/zips.

Choosing between 32bit and 64bit
  • The 64bit compiler will also run op 32bit computers. Not problem at all.
  • The 64bit compiler can do everything the 32bit compiler can, including creating standard 32bit executables.
  • The 64bit compiler can do stuff the 32bit compiler can't, like creating 64bit executables. It also comes with a lot more headers and libraries.
  • There is no single reason to download the 32bit version except for maybe file size, marginally longer compiling time, or in case you have to use that specific compiler for any reason (regression problems for example).
Compiling for 32bit using TDM-GCC x64
  • To force 32bit on all new projects and non-project compiles, go to Tools >> Compiler Options and select the 'TDM-GCC 32bit' profile. This profile will pass -m32 and use lib32 by default.
  • To force 32bit on already created projects, go to Project >> Project Options >> Compiler and select the 'TDM-GCC 32bit' compiler profile.


  1. Thank you for this great bugfix-release :)

  2. Dear Orwell,

    Thank you for this triply *great* undertaking on your part!

    ... and I want to contribute yet another bug for your consideration:

    On my system, the version, immediately after my pressing a button that launches it, reports that "An unexpected error has occured in the application...", and yields the following bug report:

    Application version:

    Machine info
    Platform : Windows NT
    OS version : version 5.1 (build 2600)
    Additional info: Service Pack 3
    Computer name : YOUR-CD66F796A2

    Memory Status
    Physical memory: 1 600 237 568 total
    1 193 562 112 in use ( 74,59%)
    406 675 456 free ( 25,41%)
    Cache : 3 586 400 256 total
    1 286 905 856 in use ( 35,88%)
    2 299 494 400 free ( 64,12%)
    Virtual memory : 2 147 352 576 total
    63 221 760 in use ( 2,94%)
    2 084 130 816 free ( 97,06%)
    Memory load : 74%

    The following error occured in version
    Out of memory (at address 0x00102E08)

    Please include a description of what you were doing before the error occured (please give as much precisions as possible) :

    State information follows:
    Stack trace:
    00280717 (0017F717): TEAnalyzer.EHandler (ExceptionsAnalyzerFrm - 231)
    001F7A20 (000F6A20): TSynEditSearch.Next (SynEditSearch - 242)
    001F75D0 (000F65D0): TSynRCSyn.IsFilterStored (SynHighlighterRC - 1150)
    001F7190 (000F6190): TSynRCSyn.SlashProc (SynHighlighterRC - 930)
    001F7120 (000F6120): TSynRCSyn.SlashProc (SynHighlighterRC - 906)
    001D4F67 (000D3F67): TCppParser.Load (CppParser - 2247)
    0024D1B0 (0014C1B0): TMainForm.InitClassBrowser (main - 3858)
    0025367D (0015267D): TMainForm.FormCreate (main - 6237)
    00283B23 (00182B23): (devcpp - 166)
    00283B5B (00182B5B): (devcpp - 169)
    002837B0 (001827B0): (devcpp - 108)

    Among other things, you might be interested in the fact that reports the wrong version of my system, whereas I actually have one with the following characteristics:
    Platform : Windows XP Media Center Edition
    OS version : version 2002
    Additional info: Service Pack 3
    Computer name : YOUR-CD66F796A2
    It is installed on a Toshiba's Satellite P100 notebook.

    After I press "Continue", the program starts seemingly OK. It does compile an executable (as both F9(Compile) and F11(Compile & Run) perform a correct compilation), be it from a standalone source code file or a whole project. However, neither F11 nor F10 executes the compiled program...

    1. Look at the top of the website: is out! Maybe this will solving your problem ;)

      And never forget to uninstall the old-version first :D

    2. Dear Anonimous,
      Thank you, I definitely will.

    3. Dear Orwell,

      Re my previous post: Your note in red above on this page does help the "Out of memory" message at startup. I hope that my installed system is not being detected correctly just as well!

  3. "Added two more themes."
    Where? All I get is the old ones. "New look", "Gnome", "Blue" for interface and "Classic", "Classic Plus" for the editor.
    I think you forgot to add that one.

    Here is a partial TO-FIX list for the next version:
    Global compiler settings are still ignored.
    "Clean" command returns a warning when binaries are not found, even though object files are cleared (what I use it for).

    1. Hi,

      You can find the new editor themes at Tools >> Editor Options >> Colors >> Select Theme.

      Also, global compiler settings are NOT ignored: they are used for non-project compiles. Projects always listen to the settings located at Project >> Project Options >> Compiler.

  4. In my previous comment on the page, I was asking how to configure the compiler if I had it in a different directory from the default. I have now downloaded packaged with the MinGW compiler, and I checked a box which said something like "Remove all previous configurations". I did a first-time configuration again, so all settings should be as the default. (However, I noticed that the "default source for new files" that I set previously is still there!)

    1. The code completion still doesn't seem to work properly. I include and when I type "sca", is it supposed to list possible functions like "scanf"?

    2. When I hover over "scanf", I get a tooltip telling me the scanf that is in and not the that I included.

    3. What are the directories in the "Directories" tab of the "Compiler Options" used for? I don't see important directories like "C:\Program Files\Dev-Cpp\MinGW32\lib\gcc\mingw32\4.7.0\include\c++" listed in C++ includes. Wouldn't there be a problem then? The old version of Dev-C++ had this directory, and some others inside \include\c++ which don't seem to exist in the new version of MinGW.

    4. When I middle-click on a background file tab, it closes the current tab... quite unintuitive.

    5. Why must the linker now have these options: "-static-libstdc++ -static-libgcc"?

    Anyway, thanks for the effort... :)

    1. sorry, the <'s and >'s got removed in (1) and (2). It's supposed to be:
      1. The code completion still doesn't seem to work properly. I include "cstdio" and "using namespace std;" and when I type "sca", is it supposed to list possible functions like "scanf"?

      2. When I hover over "scanf", I get a tooltip showing me the scanf that is defined in "stdio.h" and not the one in "cstdio" that I included.

    2. 1) Currently, completion is only populated by the included files and the cache. Up to and excluding, populating only happens when you include , but as of, is also supported. Also, please try enabling Tools >> Editor Options >> Class Browsing >> Scan global files.

      2) See above.

      3) I assume the lib and bin directories are obvious. Regarding the include folders: these can be used to automatically include some standard headers. However, GCC 4 doesn't really do anything with them. I'm a bit hesitant to remove them though.

      4) Lol. Will fix.

      5) These flags tell the linker of MinGW (TDM acts differently) to include all the necessary libraries *statically* (put them inside the exe). If you omit these options (you can try), *every created exe will need a separate copy of a few MinGW dll's*.

    3. Fix for #1):

      1) Currently, completion is only populated by the included files and the cache. Up to and excluding, populating only happens when you include , but as of, is also supported. Also, please try enabling Tools >> Editor Options >> Class Browsing >> Scan global files.

    4. Thanks for the reply.
      1. I don't see your reply properly (probably it's because of the HTML tags stripping (type &lt; and &gt; instead). Anyway, yes, I enabled scan global files, but it's not scanning "cstdio". Also, when I Ctrl-click "cstdio" it opens "stdio.h". I haven't seen completion at work at all except with local class members. Not sure if that's supposed to be the case. And a funny thing is that when I type "x." it comes out "WORD fract" and "short value". Where is that from?

  5. 0. The "Replace" feature really doesn't work. It replaces whatever it finds with an empty string. The "Replace in files > Current file" works though! Also, I really need a "Find next occurrence" keyboard shortcut. Is there one?
    1. Maybe "Toggle Breakpoint" should be inside the main menu too, rather than just the context menu. I spent really long trying to figure out what is the keyboard shortcut (and I think it isn't configurable).
    2. (minor) Is there anyway to customize the color of the highlighted matching brace?
    3. (really minor) On startup, the tip of the day window isn't focused so that I can dismiss it with the Esc key.
    4. Consider doing the special symbol completion that Eclipse does, in which the inserted symbol can be overwritten when you type it and will be removed when you remove the initiating character.

    1. 0) Huh, that's really weird. Will look into it. About the second point: yes, there is. You can use Ctrl+I combined with the up and down arrows.
      1) You can toggle breakpoints by clicking on the line numbers. Also, you can edit any shortcut using Tools >> Configure Shortcuts.
      2) Currently, no.
      3) Will fix that in
      4) I'll add that to my TODO list.

    2. Thanks... you are fast!
      0. Hmm, that shortcut isn't as helpful as the "Find next occurrence" that I'm talking about... because I need the text to be selected and focused.
      1. Ah I see.. it's under EditorPopupMenu... OK.

  6. Hi, I have Windows 7 64. When I try to run created program from devc++, a dialog tell me that couldn't create process. Why? Thanks!

    1. I do believe it is possible to be even less specific about your problem, but I think I might know why you get that error.
      It usually happens when Windows cannot find one or more required library (DLL) that the exe is trying to load.
      However the error message should tell you exactly which file was not found. Most likely it's msvcrt.dll. I recommend you (re)install the latest versions of both VC 2005 and 2008 redistributable packages.

    2. Change the compiler to 32 bits, you are probably using the 64 bits compiler its hard to notice it (happened to me haha). Go to Tools > Compiler Options and change the Compiler set to configure to TDM-GCC ..... 32 bits (i was using TDM not sure what compiler you are using)

  7. In my case the completion worked never! ))
    nothing works to fix this, there are another solutions?

  8. Orwell the *.lng files are saved in unicode?
    i found some mistakes in Romanian language (my language)
    i edited them but when i set the romanian i was alerted by an error
    i think that *.lng are saved in ANSI format.

    1. They are saved in localised non-unicode formats, probably Windows-1250 in your case.

  9. where in the resources files i can find the languages?
    i found the images and i will try to make a new look 2012 :D

    1. Ehm, you can find the languages in the Lang folder. New languages will be added automatically if you put your lng file in it and specify a [lang] section.

  10. The following error occured in version
    Out of memory (at address 0x00102E08)

    always happened on startup

    Windows 7 ultimate 64bit

    can you solve this orwell? thank you

    1. Please read the bold red part of the blogpost.

    2. just read that==

      really sorry im not reading that stuff
      just using Ctrl+F about out of memory

      thank you so much,

  11. Whats the difference between tdm-gcc and mingw?

    1. tdm-gcc = 64-bit compiler
      mingw = 32-bit compiler

    2. Here's a short list of the differences:
      - MinGW lacks headers and libaries of modern MS technology, like the DWM API and DirectX 10 and above. Older MS tech (like DirectX 9) has only very limited support.
      - TDM-GCC supports building x64 executables, but supports x86 too!
      - The debugger in TDM-GCC is less buggy at disassembling and inserting breakpoints.
      - TDM-GCC has OpenMP support.
      - ...

      Simply put, you could say MinGW is simply a GCC port, with 'conservative' headers and library resources. TDM is much more customized and provides much more resources.


    This code is crashing Dev. How to reproduce it:
    -Compile code.
    -Change something(e.g. put space somewhere)
    -compile again.
    -Dev stops responding.

    If you open again then you can compile and run it. If you change something after opening .cpp file it crashes again.

    After you compiled it(don't know if before too) and crashed your Dev if you make any change to the code then it crashes even if you try to save code.

    I compile only source file, I don't make new project.

    This is file: appcompat.txt(this filename was written in error report, there was also devcpp.exe.mdmp I can send it if you need it)

    Also if I compile all code(that within comments) then I get linker errors ;/

    1. Hello,

      I had planned to include a fix for that problem in 5.3, but it has been postponed until 5.3. This patch should fix your problems:

    2. Yes it helped thank you :)

  13. sir, why orwell dev cpp, .exe that already compiled x10bigger size than the stock bloodshed c++ ?

    1. You mean the devcpp.exe file itself or the whole package? The exe itself has barely grown, but the compilers are much bigger. They now provide much more headers and libraries, making them quite a bit bigger.

    2. no sir, i mean the file that already compiled using this devcpp.
      usually i compile an easy program just 533kb

      using this make the size 5mb

      sorry my bad english

  14. Just curious...

    i install this version of your dev-cpp (which is the first time that i try with this version), i download two versions of the IDE (mingw and tdm-gcc) because i didn't find information about the diference of the two lines of de IDE. so, i'd start with the mingw version, and in the first run, it splashes me this message:

    i've not tried with de tdm-gcc version yet, but when i do it, i will tell you how it's working.

    i have a W7x64 by the way.

    PD: excuse my english, because i have no much practice writing it.
    PD2: if u need some translations to latinamerican-spanish, i may help with that. you just tellme how ;)

    1. Hi,

      Current versions are incompatible with the options format used by Dev-C++ As of, Dev-C++ will nicely warn you about the presence of old options. But currently, it will just throw an exception.

      The quick fix would be to remove %APPDATA%\Dev-Cpp\ and restart.

      And about the translation: I would really like to receive updated translations. Please read the 'Translators needed' part in the right column (will clarify it a bit more), and email me updated lng files.

    2. i have another doubt.

      i use a lot GTK+ libraries, i'd installed the respective devpak, but it doesn't give me the option to initiate the GUI project. ¿is that normal?, or i'm just doing something wrong?

  15. Perhaps I have a stupid question, I want to use Dev C++ with GSL, and I would like to follow this page "", it mentions the MiniGW, but I don't know whether I should choose "The setup which includes MinGW32 4.7.0" or I can also use "The setup which includes TDM-GCC x64 4.6.1" instead? Thank you.

    1. I apply with TDM-GCC x64 4.7.1

    2. Though it is unimportant what to use TDM-GCC do also X32 and X64

    3. But the author in the above link gives the compiled version of GNU Scientific Library on Windows using MinGW, if I want to use it directly (not recompile it by myself) do I need to use MinGW only, or TDW-GCC is also valid?

  16. It's a good program. But the executable file iostream leaves with 600 KB.

    1. That's normal behaviour for at least GCC 4.

      You can make your executables smaller using the -s flag and -Os. Of course you can either type them manually or use the provided dropdowns.

    2. Well, I can only leave the smallest executable using the compiler from the command line.

  17. Is it by design that the app always opens maximized (doesn't remember it previous size and screen location since last close) ?

    Thank you for your good work !

  18. i have a doubt.

    i'm trying to make a devpak with some x86 headers and binaries, but i get a little confuse, because i don't know where i got to copy the 32-bit binaries. usually i copied to the bin folder on the top of the applications folder (Dev-Cpp\bin), but now, you change that directories inside tha MinGW64's folder, and inside you have the 32-bit mingw's folder. so, where i have to configure de devpak to copy these files?.

    it's a GTK devpak, so it has the bin, contrib, etc, include, lib, make, man, manifest, share, src, and the templates folders. i already saw the templates folder is on the top, but where i put the rest of them?, inside the mingw64 or inside the mingw32's folder?

    and by the way: GREAT JOB!!, and thank you for your infinite patience.

  19. is compatible with Windows 8 ?


  20. This comment has been removed by the author.

  21. There is one issue which i found , i tried my best to solve it but failed , wish you can help.

    I converted mysqlclient.lib to mysqlclient.a using ar command
    ar rcs mysqlclient.a mysqlclient.lib

    now am keep getting that error Archive has no index; run ranlib to add one

    I run ranlib on mysqlclient.a but still getting the above no index error :( do not know how to fix this , so need help

    ranlib libmysqlclient.a

    please help with other libraries i also get the same error Archive has no index