Monday, April 16, 2012

Dev-C++ 5.2.0.0 released

Time for the usual lorry load of bug fixes and improvements. Most notable are the global update to Segoe UI (instead of MS Sans Serif) and a couple of interface improvements.




Changes - Version 5.2.0.0 - 17 April 2012
  • Fixed maximize not covering the whole screen correctly on netbook screens.
  • Fixed some crashes regarding code folding.
  • Code folding is a bit faster now.
  • Opening files is a bit faster now.
  • The tip of the day form now does not show up when toggling fullscreen.
  • Panel resizers in the main form now hide when there's nothing to resize.
  • Fixed a mulitple struct definition after '};' detection bug.
  • Moved to a more recent SynEdit component.
  • Symbol completion is faster and has more options now.
  • Added a console pausing option to Environment options.
  • Fixed a font color issue in the function argument tooltip.
  • Added back trim trailing spaces.
  • Completed symbols are now skipped more smartly.
  • Windres is now, by default, forced to output i386 res files when compiling 32bit executables.
  • Loading using the standard caching options is now 0.1 second faster.
  • The Classes toolbar now hides variables of classes, making stuff a lot more readable.
  • Project opening is now quite a bit faster.
  • The SynEdit components in Editor Options now support code folding too.
  • Code Folding is a bit faster now.
  • DevCppPortable now accepts parameters and passes it to devcpp.exe.
  • Dev-C++ now uses FastMM4 to manage its memory, making allocations faster!
  • Fixed 'Close all but this' closing all tabs.
  • The code tooltip now properly hides when opening new tabs.
  • One can now edit text while using Incremental Search.
  • Commas inside strings inside function parameters don't make Dev-C++ seperate arguments anymore.
  • Added the user selectable font to all dialogs.
  • Redesigned some dialogs.
  • Simplified font selecting in Editor Options.
  • The compile progress window can now be translated.
  • Gutter colors are fixed: user themes can now properly modify its colors.
  • Updated the Chinese (TW) translations (translated by cin.getline).
  • Saved one fopen call per created tab in case you do not use default code snippets.
  • Newly created files will now be properly rescanned for folds, preventing crashes when cutting from, copying from or pasting to untouched project code.
  • The default code editor in Editor Options now retains focus when pressing tab.
  • Some more fixes I forgot about.


Important notices
  • The options format has changed. If you want to reuse an old pre-4.9.9.3 config file (NOT recommended), or, more importantly, when you're overriding Compiler Options in your project, you need to re-set these project settings once and save the project. You'll then have an updated 4.9.9.3+ project file.
  • This version has GCC built-in instead of being an aditional package. It also contains D3D9/10/11, GDI, Win32 and OpenGL headers and libraries in that flavor.
  • This version is now fully portable. If you also don't want Dev to leave anything behind in the registry, please select "Portable" or "Minimal" in the setup options.
  • For ultimate portable programming, please launch devcppPortable.exe located in the main folder of the portable zip download. This will make dev 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.



Download
The setup can be downloaded here: 32bit or here: 64bit. The Portable zip version can be downloaded here: 32bit or here: 64bit. The source code can be found here.


Beta/RC updates
The 5.2.0.1 RC1 update can be found here. Its source code can be found here.


Guide to choose 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).
Guide to compile for 32bit using TDM-GCC x64
  • To force 32bit on all new projects and non-project compiles, go to Tools >> Compiler Options >> Settings >> Code Generation and set "Pointer Width" to 32bit.
  • To force 32bit on already created projects, go to Project >> Project Options >> Compiler >> Code Generation and set "Pointer Width" to 32bit.
  • Now open Tools >> Compiler Options >> Directories >> Libraries. Change the path ending with 'lib' to point to a folder called 'lib32' next to it.
  • Done!
  • Alternatively, one can create a 32bit and 64bit config based on one installation of TDM-GCC x64. Go to Tools >> Compiler Options and create a new set called TDM-GCC 4.6.1 32-bit for example. Copy all settings in the General tab from the x64 set. Then, for that compiler, set the settings described above to your 32-bit configuration. This way, you don't have to install two compilers!

40 comments:

  1. Good job Orwell! Keep up the good work.
    Just fix the links to the setup files. You 're linking the 5.1.1.0 versions!

    ReplyDelete
  2. Oh yeah!!! the wait is over. :)
    You are amazing Orwell.

    ReplyDelete
  3. And yes, no more maximize bug and flat buttons :)
    Just a heads up the links above are the previous build "5.1.1.0" so you have to go source forge and look for the recently built 32 and 64 bit versions.

    Happy coding! :)

    ReplyDelete
  4. Great job!

    Just one interesting (little) thing, though: when you double-click a file to open it in Dev-C++ (assuming it's not already running), when the main IDE window shows up, the taskbar button for it will be popped out instead of pushed in (if you know what I mean).
    (This is on Windows XP.)

    ReplyDelete
    Replies
    1. Hmm, this seems to be working fine here on Win7.

      Does the program itself have focus (can you start typing right away)?

      Delete
    2. Yeah, I can type and click inside the editor window, but the taskbar button stays popped up until I click it. (or do something like open an options window or something and close it)
      I noticed that during startup (the splash screen), the taskbar icon disappears (as if the program was closed) and then immediately reappears (except it reappears with the taskbar button popped out).
      This seems to happen during "Creating extra dialogs...", but don't quote me on that.

      Delete
  5. Bug report: I downloaded the latest version from Sourceforge. I am running the 32-bit version on Win-XP. When I add a breakpoint to a simple C program and try to run it in Debug mode, Dev-C crashes with the following error message: "An unexpected error has occurred in the application. List index out of bound." The program runs fine with no breakpoints.

    ReplyDelete
    Replies
    1. Fixed.

      Thank you for reporting.

      Delete
    2. Thanks for the fast response! How do I get the fixed version, or should I just wait for the next release? (I'm willing to be a beta tester.)

      Like others have said, I really appreciate that you've taken on this project. I've been using the old Bloodshed Dev-C for many years for an introductory C Programming class that I teach, but the interface is rather outdated and buggy, so I'm planning to encourage my class to start using your version instead.

      Delete
    3. Please do encourage people to upgrade! I'd really appreciate that.

      Also, I'll release a beta update with this fix and others somewhere today, so you can test the fix.

      Delete
  6. The Uncomment option in the Edit menu doesn't work.

    ReplyDelete
    Replies
    1. Can you give/email an example piece of text that produces the error?

      The only bug I know of is that it doesn't like Mac newlines (\r), but that has been fixed now.

      Delete
  7. Hi. You are doing wonderful job, I love seeing Dev-C++ updated, it's a great IDE in school environment.
    I've just like to ask, you probably know project called wxDev-C++, don't you plan... well... joining forces?

    ReplyDelete
  8. SUPER!!!!!!!!!!!!!!!!!!!!!!!!!!

    http://docwiki.embarcadero.com/RADStudio/en/Formatter.EXE,_the_Command_Line_Formatter

    ReplyDelete
  9. I used to to develop with Dev-C++ long time ago. Now I use Geany in Linux but I am happy to see it back.
    BTW, it's working very well in Linux under Wine.

    Keep the hard work.
    Regards,
    #t

    ReplyDelete
    Replies
    1. Glad to hear it's working fine on Wine! I should mention that somewhere.

      Also, is there any way for you to contact Colin Laplace? I've tried contacting him in every possible way, but he's not responding to anything...

      Delete
  10. Great Job you're the best, I've be waiting for this from long time ago.

    ReplyDelete
  11. I have problems with adding GTK librarires. Can you help me? It seems that there are changes in include directories...

    ReplyDelete
    Replies
    1. I'd be happy to help you. Please explain in detail what's going wrong.

      Delete
    2. I installed GTK runtime and GTK ".dev" packages.
      When I try to compile, using GTK libraries, the compiler brings me errors. I think this happens because the dir where the Package manager installs GTK is c:\prog.files\devc++\inludes, but the compilier looks for GTK libraries in C:\prog.files\devc++\MinGW32\includes
      This happens when I try to compile, using GTK libraries - see the picture
      http://images.backata.com/image-C1EB_4F97D358.jpg
      When I'm using 4.9.9.2 everything is OK, and there aren't errors.

      Delete
    3. Oh, these packages. Yes, they probably assume Dev-C++ still uses the old paths for include/lib/dir and others. They won't work straight away with the new MinGW32/MinGW64 format.

      Can you try moving the contents of the newly created folders from \ to MinGW32\?

      Delete
    4. Yes, the problem is with paths. I tried to copy condent from c:\progf.files\devcpp\include in the directory c:\prog files\devcpp\MingGW32\include, but when i try this it brings me other errors, maybe because the compilier looks for specific paths, but i don't know what are the paths. When I try to copy \include in the \mingw32\include the dir "GTK2.0", it brings me errors. When i copy the contents of the dir -gdk, gtk and etc. in the dir \mingw32\include it brings me error - it couldn't find other files. I don't know what is the exact dir structure to make it workin' with new version ot devc++. Maybe it would be good idea to include backward compatability for 4.x packages in the new version.

      Delete
    5. Stuff should be perfectly compatible.

      What I do want to mention is that you need to move the whole \include *and \lib* folders to inside MinGW32. Simply move include to MinGW32\include and the same thing for lib.

      If that doesn't work, you could download the MinGW(32) 3.4.2 compiler that came with Dev-C++ 4.9.9.2, put it in the MinGW32 folder, and try again, but I doubt that would fix anything.

      What errors are produced exactly?

      Delete
    6. I copied the whole \devc++\include directory in the \devc++\mingw32\include and the same for lib dir, I also tried to move contents of \include directory in the \mingw32\include and the same for lib directory... I tried to copy \include\gtk2.0\gtk in the \mingw32\include\ and the new dir was \ming32\include\gtk but it seems that i cant match the exact the paths and this is why it brings me errors.
      Tomorrow(i live in europe) I will do more research the problem.
      .......
      Compiler: MinGW GCC 4.6.2 32-bit
      Building Makefile: "C:\Documents and Settings\Administrator\My Documents\C\Makefile.win"
      Executing make...
      mingw32-make.exe -f "C:\Documents and Settings\Administrator\My Documents\C\Makefile.win" all
      g++.exe -c main.cpp -o main.o -I"C:/Program Files/Dev-C++/MinGW32/include"
      In file included from main.cpp:2:0:
      c:\program files\dev-c++\mingw32\bin\../lib/gcc/mingw32/4.6.2/../../../../include/gtk-2.0/gtk/gtk.h:31:21: fatal error: gdk/gdk.h: No such file or directory
      compilation terminated.
      mingw32-make.exe: *** [main.o] Error 1
      Execution terminated
      .........

      Delete
    7. I added all libraries to \mingw32\include and \mingw32\lib but now it brings me other error
      C:\Documents and Settings\Administrator\My Documents\C\cc1.exe [Error] unrecognized command line option '-mno-cygwin'
      C:\Documents and Settings\Administrator\My Documents\C\Makefile.win [Error] [main.o] Error 1 (if this is the only error: please check your library includes)

      Delete
  12. Hello there. Good job on keeping Dev up to date. However I'd like to report a little annoying graphical bug that happens on my Windows 7 machine. Sometimes symbols obscure themselves.
    This is best seen with the template console project at system("PAUSE") call. The 'm' letter is partially obscured by left bracket unless you set symbols to be displayed as black (NOT "default black" for whatever reason, the one selectable in the palette) and undecorated (not bold etc.).

    By the way, if I compile my library through separate means, where am I supposed to put my object files when they're 32-bit, and where when they're 64-bit? And what about headers? Shall I use Dev's, or MinGW's folders? And what does "32" folder in MinGW's library folder do? Sorry for loads of probably stupid questions, but multiple target compilation is confusing.

    ReplyDelete
    Replies
    1. Hi,

      Can you show me a screenshot of the font rendering problem?

      Also, about the libraries: the MinGW32/MinGW64 folders are used by Dev-C++ to automatically configure compilers. The '64' in MinGW64 part tells Dev-C++ that it needs to look in 'x86_64-w64-mingw32' for the headers and libraries. You can call these folders Monkey32/64 just fine too. You only need to set paths yourself in that case.

      Also, lib32 is the folder where 32bit libraries are stored. The 'lib' folder (for x64 compilers) stores 64bit libraries.

      About question one: why are you asking actually? Do you need to temporarily store them? Or are you confusing .o files with .a/.lib files (not likely)?

      Delete
  13. Orlando says: Very good job.

    ReplyDelete
  14. Hi, first of all thanks for the job you are doing.
    I have some issues about the 'console pauser' (or so): when you use it, the parameters passed to your program are the ones you specify plus one, and this causes problems if your program, for instance, checks for an exact number of arguments...
    At least that's what I concluded after some errors and tests...
    Regards,

    ReplyDelete
    Replies
    1. First of all, I suggest you to download version 5.2.0.2. That version contains a lot of fixes regarding the console pauser.

      http://orwellengine.blogspot.nl/2012/05/dev-c-5202-released.html

      Delete
  15. Orwell, thanks for your great job. I am using Dev-C++ 5.2.0.3 to learn C++0x codes.

    ReplyDelete
  16. Hey,

    Dev ++ not working on windows 8 please give me solution cant able to Compile any file

    Thanks

    ReplyDelete
  17. i am use 32 bit window 8 OS but dev c++ gave error of g++.exe explain my problem and explain my sol of this problem..
    regards...

    ReplyDelete
    Replies
    1. Please first upgrade to:
      http://orwelldevcpp.blogspot.nl/2012/11/dev-c-5303-released.html

      Delete
  18. devcpp-4.9.9.2_setup possible on this version while using window 8 32 bit OS

    ReplyDelete
  19. Alguien ayudeme, tengo windows 8 y siempre me sale el error de

    C:\Dev-Cpp\------------\Makefile.win [Error] [---------.exe] Error 1 (if this is the only error: please check your library includes)

    y siempre coloco el codigo perfectamente sin ningún error, y me funciona una vez, y cuando compilo el programa por segunda vez después me vota este error, y me toca cerrar y volver abrir el el programa Dev C++ AYUDENME PORFAVOR!!!!!!!

    ReplyDelete