Saturday, March 16, 2013

Dev-C++ 5.4.1, 5.4.2 RC7 released

A newer version is available!

Time for some fixes for the 5.4 series.




Changes - Version 5.4.1 - 16 Maart 2013
  • When accidentally clearing the code completion list, one is now given a second wind before the list is hidden.
  • Fixed an out of bounds error in the code completion code.
  • Fixed an error that caused crashes in Compiler Options >> Settings under Windows 2000 (and older).
  • Typedef structs now get formatted as "struct Foo" instead of "structFoo" in mouseover hints.
  • The debugger now preserves the current working directory when running programs.
  • Redesigned the compiler output formatter code, which now uses half the amount of code and plays nicely with GCC 4.8.
  • The mouseover tooltip now shows scope information too.
  • When trying to run uncompiled projects, Dev-C++ will now suggest to compile.
  • Resource errors now use the same formatting as generic errors.
  • Compiler, resource and find output line numbers will be synchronized when editing files.
  • Moved the MRU list to File >> *here* from File >> Reopen to reduce clicks needed by one.
  • Fixed OriginalPath spamming in devcpp.ini.
  • Dev-C++ will now prefer selecting 32bit compiler profiles by default on x86 OS's.
  • Merged Example projects into the new project templates.
  • Compiler settings are now validated again when loaded.
  • Upgraded to FastMM 4.991 for what it's worth.



Important notices
  • For ultimate portable programming, please keep using 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 somewhere in 2009. The latter is just as free as Dev-C++, so nothing is holding you back to extract it.



Download
  • The setup which includes MinGW32 4.7.2 can be downloaded here (25MB).
  • The setup which includes TDM-GCC x64 4.7.1 can be downloaded here (44MB).
  • The setup which does not include a compiler can be downloaded here (2MB).
  • The portable version which includes MinGW32 4.7.2 can be downloaded here (17MB).
  • The portable version which includes TDM-GCC x64 4.7.1 can be downloaded here (32MB).
  • 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.


Release Candidate 7 of the next version

The 5.4.2 RC7 update can be found here. Its source code can be found here.

Changes - Version 5.4.2 RC7 - 3 Mei 2013
  • As of RC3, Dev-C++ will now play nicely with old settings files instead of showing a 0px high window.
  • Fixed compiler default selection not being saved on first startup.
  • Dev-C++ will now suggest to disable DEP instead of crash when trying to execute data.
  • The compiler set validator will now not add any duplicate paths anymore.
  • After saving as, the window caption will now update too.
  • Fixed a few out of bounds errors.
  • Hopefully fixed a rather common bug in the MRU list ("Invalid Pointer Operation").
  • Compiler Options now does not permanently change directories before hitting OK.
  • Fixed a crash in the parser, which didn't like "#include" without any followup.



Choosing between 32bit and 64bit
  • The 64bit compiler will fully work op 32bit computers.
  • The 64bit compiler can do everything the 32bit compiler can, including creating 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 use the -m32 flag 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.

84 comments:

  1. Great improvements, thank you. Is there any way you can add a feature to open all single files or project files that were opened when the Dev-C++ was closed, upon Dev-C++ startup?

    ReplyDelete
  2. Great improvements, thank you. But GLUI example code (GLUI 221 devpack template) shows compile errors. Installed minGW 3.4.2 (bundled with dev-c++ 4.9.9.2 beta) in orwell dev-c++ and the GLUI example code once again compiled and ran fine as it used to in dev-c++ 4.9.9.2 beta. So it seems a minGW 4.7.2 compiler problem. How to fix code in GLUI example code.

    ReplyDelete
  3. The same GLUI example code compiles and runs fine in MSVC++ 2010 Express edition. Kindly help solve please. I have not slept for months together.

    ReplyDelete
  4. I found a problem. If I set Highlight Current Line Color is Gray, I can't find Cursor when it's Blinking.

    It's my problem or a general problem.

    ReplyDelete
    Replies
    1. i dont know! :DDD hahahahahahaha!

      Delete
  5. hi bug? :(

    http://i.imgur.com/F3nURqh.png

    ReplyDelete
  6. me podrian decir como integrar winBGI pero para poderlo trabajar en C.

    ReplyDelete
  7. Hey, thanks for doing this work! I'll download it.

    ReplyDelete
  8. If I the program on With write a question and who knows start to compile I see the Mistake of type does not know ?

    Then I have guessed it is necessary to write simply and after it to write still
    using namespace std; after that already sees properly all!

    ReplyDelete
  9. This comment has been removed by the author.

    ReplyDelete
  10. This comment has been removed by the author.

    ReplyDelete
  11. I think it would be good if there is support for pre 4.9 module/addon packages. Also Update link in About dialog in DevC++ leads to nowhere - when you try to check for "updates" the only thing you will be given is error(could not connect to remote site)

    ReplyDelete
    Replies
    1. Having the same issue with only two package update mirrors in the available selections and connection error popup when attempting to use either. I am using 32 (for filesize and simplicity of features) bit 5.4.1 installed from binary installer that includes mingw. Is this a server availability issue or could it be a firewall/port issue?

      Delete
  12. Hi, I got an "unexpected error" in the application:
    http://pastebin.com/kH03ZUP9

    All I did was create a new file, type a simple "Hello World" program, save it, and then hit "Compile and Run".
    I noticed that even after I saved the file, although the file name was correct in the editor tab, it still said "Untitled1" in the window title.
    Could that have something to do with it?

    ReplyDelete
  13. Why don't we rewrite the code of DevCpp in C++?

    ReplyDelete
    Replies
    1. We means you and Orwell? Or Orwell for you? I think that the answer lies in the big codebase and long time to fix it after a C++ for sake of rewriting in C++. Also as is written originally in Delphi, most likely a Lazarus port would be easier to achieve. When "we" will port it to Lazarus? To make it work in Linux in future? Or when "we" port it to use FireMonkey, etc.

      My advice for you is simply: try to make the source to run at least in parts into Lazarus. I think Orwell will be really happy to have a Lazarus backed port first so he can get more contributors. After this is achieved, try to rewrite simple parts in a language that fits better your bill.

      But as I make the prediction that you would not do neither of those (port it to Lazarus, or contribute back), I think you would waste Orwell's time (I would do it too, as I'm not contributing to it).

      Delete
  14. Hi Orwell,

    I have installed TDM-GCC x64 4.7.1 on W7 and it runs and compile sfine after installation but when I shut Dev-C++ down and relaunch it it produces series of errors complaining that the MinGW32 subdirectories are missing.

    What is going wrong here?

    Herbert

    ReplyDelete
    Replies
    1. Additional note:

      after this mentioned restart I can only select the (non exisiting) MinGW as compiler but not any more the (actually installed) TDM-GCC x64.

      Herbert

      Delete
  15. Hi, thanks you for making the software. I will download it.

    ReplyDelete
  16. good, as estimated with this version 5.4.1 I can use the lib. conio.h ?? (install ??)

    Please indicate as I can. thanks

    ReplyDelete
  17. 5.4.2 RC1
    Settings of the project don't remain.

    ReplyDelete
    Replies
    1. compilation settings

      Delete
    2. Fixed.

      The good news for now is that all settings are properly saved to disk. Only the UI didn't update. Please download RC2 (to be released in 15min or so) for the fix.

      Delete
    3. Update links for loading

      Delete
  18. Great improvement,though I'm still using 5.2.0.3 for the latest edition contains a debugging interface which I'm not familiar with(and I'm also using the classical editor).I'm wondering if the user can switch between the new debugging interface and the classical one.

    ReplyDelete
  19. RC4
    the hot keys don't work

    ReplyDelete
    Replies
    1. Can you explain a bit more? Also, can you tell me what happens if you temporarily move the "shortcuts.ini" file in the configuration folder?

      Delete
    2. Fixed.

      I've rewritten the shortcut/hotkey saving code.

      All previous Dev-C++'s used to save their data in the following format:

      (Translated menu caption)=(Hotkey)

      For example,

      Save As=Ctrl+S

      Think about what happens when you change language to German for example. When loading, Dev-C++ will then start looking for "Save As" to give the hotkey to, but it can't find it, because the menu item is called "Speichern Als" now.

      The new version uses the hardcoded untranslated menu caption to save hotkeys.

      Delete
  20. Hi

    I've just installed the 32-bit 5.4.1 Dev-C++. The problem is I'm missing all the information about classes in my project. The tree that displays the classes (class explorer) is empty and so is the classes toolbar. I created a completely new C++ project and added older, previously written code (about 8 files). All the files are marked as C++ files in the project options.

    Is there a way to force the scanning of the source files and retrieve the information about the classes?

    BTW Could you please add a close button to the tabs in the editor.

    ReplyDelete
    Replies
    1. Sorry about the previous entry, you may delete it now. Code completion was misteriously disabled during the installation and that of course caused the class browser to remain inactive.

      Delete
  21. editing CTRL + Z, CTRL + Y missing lines of code !!!!!!!!!!!!!!!!!!!

    ReplyDelete
    Replies
    1. Can you reproduce this in version 5.4.0 and 5.4.1?

      Delete
  22. Replies
    1. Thank you for your effort. I remember changing some minor things in the editor component, so I might be able to quickly fix it.

      Delete
    2. If possible, can you give me a few steps to reproduce the problem?

      Delete
    3. YES OF COURSE! ! !
      Follow on steps
      http://tiven.ru/file/0.png
      http://tiven.ru/file/1.png
      http://tiven.ru/file/2.png
      http://tiven.ru/file/3.png
      http://tiven.ru/file/4.png
      http://tiven.ru/file/5.png

      Delete
  23. Not sure if my previous post was recorded -

    I have updated to vs 5.4.1 - and when I compile my C++ code which is fine on an earlier version of DEV C++ - the TDM GCC 4.7.1 64 bit (and 32 bit) compile ends - and the log file is displayed .. there are many repeated assembler error entries of..

    junk '(%rip)' after expression..
    unsupported instruction after MOV..

    looking at a few notes on line it seems a 32-64 bit code set issue...are there any parameters in compile or output options I can use to correct this . Machines are Acer 64 bit O/S I7 2600S 8gb
    windows 7 -
    many thanks AlanL

    ReplyDelete
    Replies
    1. Hi - been following this issue through.. so hope this is useful..

      The 64 bit compiler-assembler messages were fixed by setting Compiler - Coder Generation pointer width to 32 bit.

      After that had quite a few warnings re "depreciating string constant to char* [Wwrite-Strings]"

      Ran the code though and it SEGOVed ... on a strcpy , which did not error on the older compiler version nor 64 bit version.. paraphrased the code was strcpy( char* xxx, "123456"); which is obviously wrong.. Both compilers did not pick it up, and it did not fail in execution when compiled under the old version.

      After this..
      The code then went a bit crazy and we tracked that back via the "string warnings" to function calls with string* , string parameters - where the called functions string value parameters were corrupted.. again some of these calls gave warnings re string depreciation and others not.

      Accepting we had some type - coding errors in the char*, const char*, string space but the code worked very under the old compiler version
      we dont quite understand why some of these errors are flagged, and some of them are not.

      As a guess could I assume that those functions/parameters that have been flagged as a warning, take a different process/assembly path in the compiler to those that havnt been flagged?

      Naturally I will now make sure all string types on fn params are good.

      Again happy to take comments , and many thanks for DEV C++ to, its great..

      Delete
  24. Hi Orwell,
    Can you please tell me how to include and use graphics.h and libbgi.a in your version of Dev C++ ?
    I tried using them the same way as before in the 4.9.9.2 version with both MINGW and TDM-GCC but it gives me an error about a duplicate of int right.After finding a solution for this int the libbgi.a is not recognised.
    Please help!

    Thank you!

    ReplyDelete
  25. Hi Orwell!
    Just wanted to thank you for four brilliant work on this! I used dev cpp a lot when at first learning to program and even though I have learned quite a lot of new IDE's since then I tend to fall back to this for some reason. It's simply great!

    So thank you, and have a nice life :)

    ReplyDelete
  26. Follow on steps
    http://tiven.ru/file/0.png
    http://tiven.ru/file/1.png
    http://tiven.ru/file/2.png
    http://tiven.ru/file/3.png
    http://tiven.ru/file/4.png
    http://tiven.ru/file/5.png

    ReplyDelete
    Replies
    1. Can't reproduce yet.

      1) Can you send me your settings file.
      2) Can you try out this build? http://wilcobrouwer.nl/bestanden/Dev-Cpp%205.4.2%20undo%20test.7z

      Delete
    2. 1) default settings.
      2) I will check

      Delete
    3. Another one.
      http://wilcobrouwer.nl/bestanden/Dev-Cpp%205.4.2%20undo%20test%202.7z

      Delete
    4. Fixed !!!!!!!!!!!

      Delete
    5. Yes, of course!

      Delete
  27. hlw Orwell,
    wht criteria must be fulfilled to use graphics.h in your version.....plzzz help me with this...

    ReplyDelete
  28. Nice to find a new version of Dev-C++.
    I used to write my C++ + Windows API projects using Dev-C++ 4.9 until today.
    Just 5 minutes since I uninstalled that version and I installed 5.4 and I found that my projects continue to work after skipping just one warning about compiler settings.
    Thanks again for this work, I was afraid not to be necessary to change the IDE, sometimes I felt bad about using an IDE 8 years old.
    I found this new Dev-C++ writing "devcpp" in Wikipedia, maybe the best place to find new things. I found there a small article:
    http://en.wikipedia.org/wiki/Devcpp

    ReplyDelete
  29. Iam trying to use srand the way used to use it : srand((unsigned)time(NULL));
    which was working in an older version of DEV but now it stopped working and giving me error , srand was not declared in this scope!
    Iam trying to fix it, but can't find any source of help :(

    ReplyDelete
  30. Can you write 5.4.1 changes the Korean?
    Because I'm Korean people. I'm learn English. But did not perfectly learn the English.
    Well...I don't mind you don't translate Korean.
    (Sorry...I don't write English very well :( )

    ReplyDelete
  31. Can't get Code Completion working even after a clean install.

    Windows 8 (inside VirtualBox)

    ReplyDelete
  32. @treasure
    did you include stdlib.h ?

    @anonymous
    don't select all header files for code completion. only a basic set of every-day-use plus those for your current project.

    thanks orwell for quick fixes. compiler settings bug was nasty :D

    still there are some cosmetic glitches:

    running DevCpp with file as param loads english language instead of localized

    tip of the day:
    random tip has no localization

    menu:
    Tools menu item 9002=&Check for Packages... doesnt show translated message

    You did a fine job though.
    BTW where to upload language files. i've updated german.lng

    ReplyDelete
    Replies
    1. 1) That's weird. Will check.
      2) Fixed the "Random Tip" button problem.
      3) Fixed that too.
      4) You can send me an email of course.

      Delete
    2. you got mail ;)
      if you like, send me modified english.lng before releasing so i can update german.lng too.

      Delete
    3. Thank you for your reply, it worked with the stdlib.h
      much appreciated :)

      Delete
  33. Thanks man!! it s very helpful (y)

    ReplyDelete
  34. I noticed that using the TDM-GCC compiler, it will not compile 32-bit version without throwing errors. I managed to solve it buy adding the following:

    1) Go under Tools -> Compiler Options.
    2) Select TDM-GCC 4.7.1 32-bit
    3) Check "Add the following commands when calling the compiler" and add -m32 in the box below that.
    4) Add -m32 to the next box for the linker. It should read " -static-libgcc -m32 ".

    I did the same thing for the 64-bit compiler but replacing the -m32 with -m64.

    ReplyDelete
  35. I found that there is no functionality for the portable version to include a specific font to use with it. For example, I like the font Monaco, but when open the DevC portable in my own computer and config it, it will display the font. When I use that in another computer, it will revert back to font Courier or some monospace font like that.

    ReplyDelete
    Replies
    1. Ehm, this font name is stored in the config files and remembered. The only thing I can think of is that Monaco isn't installed on the other PC. You can check that by opening C:\Windows\Fonts and see if Monaco is listed there.

      Delete
  36. iam have isntall conio2 package
    confugure compile option with -lconio
    but not compile, because becomes message dont cant find lconio.h
    then iam have add in compile directories the path of conio2 arquive
    but more erros becomes.
    what is the correct procedural for instal conio2 in verison 5.3.

    in version 4.9 function fine.

    tanks
    Jonny

    ReplyDelete
    Replies
    1. Hi, iam find solution.
      its simple.

      only must make that operation:
      1)normally install the library by conio pakage mananger
      2)then copy the installed files to the folder MinGW32

      \dev-cpp\lib
      libconio.a
      libconio_unicode.a
      \dev-cpp\include
      conio2.h
      constream
      copy to
      Dev-Cpp\MinGW32\lib
      Dev-Cpp\MinGW32\include

      tanks
      Jonny

      Delete
  37. Hi
    Can you please tell me how to include and use graphics.h and libbgi.a in your version of Dev C++ ?

    ReplyDelete
  38. Thanks!
    Also, the MRU list doesn't seem to be working properly with RC6, keeps opening the wrong file.

    ReplyDelete
  39. Hello !

    If my project compile with TDM-GCC 4.7.1 64-bit, the compiling succesful.
    If compile the same project with TDM-GCC 4.7.1 32-bit, the compiling not succesful:

    /Program Files/Dev-Cpp/MinGW64/x86_64-w64-mingw32/lib32" -static-libgcc -def vstplug.def -luuid -lole32 -lgdi32 -lcomdlg32 -lvfw32 -lkernel32 -m32 -s -o bin/limiter.dll
    c:\program files\dev-cpp\mingw64\x86_64-w64-mingw32\bin\ld.exe [Warning] cannot find entry symbol DllMainCRTStartup; defaulting to 000000006b241000
    c:\program files\dev-cpp\mingw64\x86_64-w64-mingw32\bin\ld.exe i386:x86-64 architecture of input file `limiter.exp' is incompatible with i386 output
    c:\program files\dev-cpp\mingw64\x86_64-w64-mingw32\bin\ld.exe [Warning] cannot find entry symbol DllMainCRTStartup; defaulting to 000000006b241000
    F:\limiter\limiter.exp fake:(.edata+0x34): undefined reference to `VSTPluginMain'
    F:\limiter.exp fake:(.edata+0x38): undefined reference to `VSTPluginMain'
    F:\limiter\collect2.exe [Error] ld returned 1 exit status
    F:\limiter\dllwrap.exe c++ exited with status 1

    Why ?

    Thanks!

    ReplyDelete
    Replies
    1. I forgot to write : compiling with MinGW GCC 4.7.2 32-bit is succesful.

      Delete
  40. Thanks again.
    However, the MRU list still opens the wrong file when selecting to open a file from that list.

    ReplyDelete
    Replies
    1. Cannot reproduce. :(

      Can you tell me which version you're using?

      Also, can you send me your devcpp.ini file, located at %APPDATA%\Dev-Cpp or config?

      Delete
    2. RC7, however, it seems to be working now. I cleared the list before and just checked it, it works now. Sorry about that.

      Delete
  41. 1.
    int test(int);//declaration
    int main(){
    test(5);//right click and select Goto Declaration or Goto Definition,the cursor goto the definition of test
    return 0;
    }
    int test(int n){//definition
    }

    2.Code Completion should generate word automatically without the user actually typing it in completely.
    http://en.wikipedia.org/wiki/Code_completion#In_source_code_editors
    Dev-cpp 5.4.2 RC7

    ReplyDelete
  42. IS there any way to stop the IDE from coming up in zoomed mode every time?

    It's very annoying.

    ReplyDelete
  43. Please change makefile the file:
    1) the old
    clean: clean-custom
    $ {RM} of $ (OBJ) of $ (BIN)
    the new
    clean: clean-custom
    $ (RM) of $ (OBJ) of $ (BIN)

    2) Delete the rm.exe program

    ReplyDelete
  44. why does it not support other compilers??
    I still cant configure it to use tcc,
    which is just a compiler without make or a debugger
    or linker. please add a feature to support third party compilers.

    ReplyDelete
  45. please add this feature ,

    it would be good if it check for headers files (.h) in project folder by default , i mean every time its hard to copy and past header files in include folder , so header files related to project if included directly to project folder then it would be good if dev c check by default in project folder

    ReplyDelete
  46. This comment has been removed by the author.

    ReplyDelete
  47. bende dev c++ 5.4.1 kurulu bir kaç aydır kullanıyorum ama bir sorun var sanırım proje oluşturmak istediğimde şu hata mesajını yazıyor ekrana..>could not change to Templates directory()..yazıyor,sizce ne yapmalıyım?

    ReplyDelete
  48. To create your programing assignments and learn programing just visit this website. http://clanguageprogrames.blogspot.com/

    ReplyDelete
  49. Thats very good . i think this information really help me . Thanks.

    ReplyDelete
  50. //Prova de Algoritmos//

    //Declaração das Bibliotecas//

    #include
    #include
    #include
    #include
    #include

    using namespace std;

    //Declaração das variáveis//

    float luz,agua,aluguel,compra,fone,somaconta;
    int main()
    {gotoxy(15,5);
    cout<<"Informe o valor da conta de Luz : ";
    cin>>luz;
    gotoxy(15,6);
    cout<<"Informe o valor da conta de Agua : ";
    cin>>agua;
    gotoxy(15,7);
    cout<<"Informe o valor da conta do Aluguel : ";
    cin>>aluguel;
    gotoxy(15,8);
    cout<<"Informe o valor da Compra : ";
    cin>>compra;
    gotoxy(15,9);
    cout<<"Informe o valor da conta de Telefone: ";
    cin>>fone;
    gotoxy(15,11);
    somaconta=luz+agua+aluguel+compra+fone;/*Valor Total das despesas*/
    if (somaconta > 1000)
    {cout<<"Valor acima da renda";
    gotoxy(15,13);
    }
    if (somaconta < 1000)
    {cout<<"Valor abaixo da renda";
    gotoxy(15,14);
    }
    {cout<<"O valor total das despesas e : R$ " <<somaconta;
    gotoxy(15,18);
    }
    system ("PAUSE");
    return 0;
    }

    Gostaria de saber se é possível compilar sem erros esse código com o tdm gcc 64 bits, pois já fiz todo tipo de configuração e dá um erro de que o arquivo libconio.a não é compatível com com o sistema.

    ReplyDelete
  51. how can i run graphics in dev c++ 5.4.2

    ReplyDelete
  52. platform for programmer ..
    https://www.facebook.com/FamilyOfSoftwareEngineers

    ReplyDelete
  53. Its Superb blog , if Rundll error problem go through this link and get free from error.
    How To Remove Rundll Error
    Thank you
    Aalia lyon

    ReplyDelete